JAVA基础:常用类 (习题笔记)
1,验证键盘输入的用户名不能为空,长度大于6,不能有数字。
提示:使用字符串String类的相关方法完成
package packagingClass;import java.util.Scanner;public class Exercises1 {//程序入口public static void main(String[] args) {//输入用户Scanner input = new Scanner(System.in);System.out.println("请输入用户名:");String name = input.nextLine();//判断--用户名不能为空if (name == null || "".equals(name)) {System.out.println("输入错误,用户名不能为空!");return;}//判断--长度大于6if (name.length() <= 6) {System.out.println("输入错误,用户名必须大于6个字符");return;}//判断--不能有数字for (int i = 0; i < name.length(); i++) {//将每一个字符取出char ch = name.charAt(i);//判断--字符能有数字if (ch <= '9' && ch >= '0') {System.out.println("输入错误,用户名不能有数字");return;}}System.out.println("用户名符合要求");}
}
2,接收从键盘输入的字符串格式的年龄,分数和入学时间,转换为整数、浮点数、日期类型,并在控制台输出。
提示:使用包装类Integer、Double和日期转换类DateFormat实现
package packagingClass;import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;public class Exercises1 {//程序入口public static void main(String[] args) {//输入年龄,分数,入学时间(yyyy-MM-dd)Scanner input = new Scanner(System.in);System.out.println("请输入你的年龄:");String age = input.nextLine();System.out.println("请输入你的分数;");String score = input.nextLine();System.out.println("请输入你的入学时间(格式:yyyy-MM-dd)");String date = input.nextLine();//转换为整数,浮点数,日期类//string----intint age1 = 0;age1 = Integer.parseInt(age);//string----doubledouble score1 = 0.0;score1 = Double.parseDouble(score);//string----dateDate date1 = null;SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");try {date1 = sdf.parse(date);} catch (ParseException e) {e.printStackTrace();}System.out.println(age + "\t" + score + "\t" + sdf.format(date1));}
}
3,将1990年3月3日通过Calendar来表示,并得出这天是该年的第几天?将该日期增加35天,是哪一天?使用代码来说明。
-
方法一
package packagingClass;import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.Scanner;public class Exercises1 {//程序入口public static void main1(String[] args) {//创建对象 因为Calender是抽象类,不能直接,只能---/* Calendar cal = new GregorianCalendar();Calendar cal2 = Calendar.getInstance();*/Calendar cal = Calendar.getInstance();//表示1900-3-3cal.set(1900, 2, 3);//该天是该年的第几天?int days = cal.get(Calendar.DAY_OF_YEAR);System.out.println("这天是该年的第" + days + "天");//该日期增加35天是哪一天?cal.add(Calendar.DATE, 35);System.out.println("那一天是" + cal.get(Calendar.YEAR) + "年" + cal.get(Calendar.MONTH )+ "月" + cal.get(Calendar.DATE) + "日");/* //得到date对象Date date = cal.getTime();System.out.println(date.toLocaleString());*/}
-
方法二
public static void main(String[] args) throws ParseException {//创建一个日期实例Calendar cal = Calendar.getInstance();//格式DateFormat df = new SimpleDateFormat("yyyy-MM-dd");Date date = df.parse("1990-3-3");//实例化日期cal.setTime(date);//该天是该年的第几天?System.out.println(cal.get(Calendar.DAY_OF_YEAR));//该日期增加35天是哪一天?cal.add(Calendar.DAY_OF_YEAR, 35);System.out.println(df.format(cal.getTime()));//转换成字符串}