以下关于Object类,说法错误的是? ()
A: 任何类都间接或者直接继承Object类
B: Object是所有类的根类(父类)
C: 任何一个类都可以使用Object类中的方法
D: Object类中的方法不能被重写
答案:D
下面说法错误的是:
A:Object类是Java中最高父类,其它所有类都直接或者间接的继承Object类;
B:Java中,如果一个类没有明确书写继承的类,则默认都继承Object类;
C:Object类型的变量,可以指向Java中任意一个对象;
D:Object类是一个抽象类,所有Java类都具有Object类中定义的方法;
答案:D
解析:Object类不是抽象类。
下面对于toString()方法和equals()方法描述正确的是? ()
A: 类重写toString()方法是为了打印对象的地址
B: 类重写equals()方法是为了比较对象的地址
C: 类重写toString()方法是打印对象中的属性,重写equals()是比较对象中的属性
D: 类只能重写Object中的toString()方法和equals()方法
答案:C
下面说法错误的是:()
A:toString方法会返回一个字符串,在使用System.out.println()语句输出对象时就是输出的这个方法返回的数据;
B:String类已经重写了toString和equals方法;
C:一般开发中都需要重写toString方法和equals方法
D:equals方法底层使用的是 == 比较的,所以是用来比较两个对象是否是同一个对象的;
答案:D;
解析:equals方法的作用,是用来比较两个对象的各个属性值是否相等,而不是两个对象是否是同一个对象的;Object类中的equals方法默认是使用 == 比较的,但一般开发中都需要重写这个方法,比较两个对象的各个属性值。
参考答案:
/**
* 手机
*/
public class Phone {
//成员变量
private String brand; //品牌
private String color; //颜色
private double price; //价格
//空参构造
public Phone() {
}
//全参构造
public Phone(String brand, String color, double price) {
this.brand = brand;
this.color = color;
this.price = price;
}
//toString
@Override
public String toString() {
return "Phone{" +
"brand='" + brand + '\'' +
", color='" + color + '\'' +
", price=" + price +
'}';
}
//getter & setter 略
}
public class Demo {
public static void main(String[] args) {
//创建对象
Phone p1 = new Phone("小米", "黑色", 1999);
Phone p2 = new Phone("华为", "白色", 2999);
//打印对象
System.out.println(p1);
System.out.println(p2);
}
}
参考答案:
/**
* 学生
*/
public class Student {
//成员变量
private String name; //姓名
private String gender; //性别
private int age; //年龄
//空参构造
public Student() {
}
//全参构造
public Student(String name, String gender, int age) {
this.name = name;
this.gender = gender;
this.age = age;
}
//equals
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
Student student = (Student) o;
return age == student.age &&
Objects.equals(name, student.name) &&
Objects.equals(gender, student.gender);
}
//getter & setter 略
}
public class Demo {
public static void main(String[] args) {
//创建两个学生对象
Student stu1 = new Student("张三", "男", 18);
Student stu2 = new Student("张三", "男", 18);
//打印结果
System.out.println(stu1.equals(stu2));
}
}
观察下列代码.日期格式化为字符串是(时间忽略)? ()
public class SimpleDateFormatDemo {
public static void main(String[] args) throws ParseException {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
Date date = new Date();
String s = sdf.format(date);
System.out.println(s);
}
}
A: 2018/04/11 22:01:30
B: 2018年04月11日 22:01:30
C: 2018.04.11 22:01:30
D: 2018-04-11 22时01分30秒
答案:B
想得到"2018-04-11 22时12分10秒"(时间忽略),模式正确的是?:
public class SimpleDateFormatDemo {
public static void main(String[] args) throws ParseException {
//此处代码应填写
Date date = new Date();
String s = sdf.format(date);
System.out.println(s);
}
}
A: SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
B: SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH时mm分ss秒");
C: SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH时mm分ss秒");
D: SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd HH:mm:ss");
答案:B
阅读代码,横线位置应填写的内容是? ()
public class SimpleDateFormatTest {
public static void main(String[] args) throws ParseException {
String str = "1998-01-01";
SimpleDateFormat sdf = new SimpleDateFormat(_____);
Date date = sdf.parse(str);
System.out.println(date);
}
}
A: “yyyy-MM-dd”
B: “yyyy年MM月dd”
C: “yyyy/MM/dd”
D: “yyyy.MM.dd”
答案:A
下面说法错误的是:()
A:Java中表示时间的类是util包中的Date类;
B:Date类的对象表示一个时间段;
C:Date类中从时间中获取年月日的方法过时了,开发中应该使用Calendar类的方法实现;
D:Date类中将时间格式化为字符串的方法过时了,开发中应该使用DateFormat或者SimpleDateFormat类;
答案:B;
解析:Date对象表示的是一个时间点,精确到毫秒。
下面说法错误的是:()
A:Calendar类是日历类,通过getInstance方法获取的对象表示的是当前时间点的日历信息;
B:因为可以方便的自定义格式,所以开发中处理时间和字符串的转换时,一般使用SimpleDateFormat类,而非DateFormat类;
C:基本类型包装类在开发中一般用来将字符串转换为对应的基本类型数据;
D:要将字符串转换为基本类型数据,字符串的字面值必须表示的是这个基本类型数据的一个值,否则运行时就会出现异常;
答案:D;
如果要将字符串转换为int型数据,说法没错;
如果将字符串转为布尔型数据,就对字符串的字面值没有特殊要求,运行时也不会出现异常。
请在控制台以“xxxx年xx月xx日 xx时xx分xx秒”的格式打印当前系统时间。
参考答案:
public class Demo {
public static void main(String[] args) throws Exception {
//创建SimpleDateFormat对象
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
//将当前时间转换成指定格式
String result = sdf.format(new Date());
//打印结果
System.out.println(result);
}
}
请编写程序,从控制台接收一个“日期”,格式:yyyy-MM-dd,程序将其转换为:xxxx年xx月xx日的格式输出到控制台。
参考答案:
public class Demo {
public static void main(String[] args) throws Exception {
//创建Scanner对象
Scanner sc = new Scanner(System.in);
//接收用户输入
System.out.println("请输入日期(yyyy-MM-dd)");
String dateStr = sc.nextLine();
//将字符串日期转换成Date对象
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd");
Date date = sdf1.parse(dateStr);
//将Date对象转换成指定格式的字符串
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy年MM月dd日");
String result = sdf2.format(date);
//打印结果
System.out.println(result);
}
}
请用代码实现:获取当前的日期,并把这个日期转换为指定格式的字符串,如2088-08-08 08:08:08。
参考答案:
public class DateTest {
public static void main(String[] args) {
//获取当前日期对象 now;
Date now = new Date();
//创建SimpleDateFormat对象 df,并制定日期格式
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//调用df的format(Date date) 方法,传入now; 接收返回的字符串
String datestr = df.format(now);
//打印这个字符串
System.out.println(datestr);
}
}
需求:使用SimpleDateFormat类,把2018-03-04转换为2018年03月04日。
参考答案:
public class DateFormatTest {
public static void main(String[] args) throws ParseException {
//创建SimpleDateFormat对象df1,指定日期模式为yyyy-MM-dd
SimpleDateFormat df1 = new SimpleDateFormat("yyyy-MM-dd");
//调用df1的parse(String str)方法传入2018-03-04,得到对应日期类型
Date date = df1.parse("2018-03-04");
//创建日期格式化对象df2,在获取格式化对象时可以指定风格
DateFormat df2 = new SimpleDateFormat("yyyy年MM月dd日");
//调用df2的format(Date date) 传入刚才转换的日期
String str = df2.format(date);
System.out.println(str);
}
}
需求:用程序判断2018年2月14日是星期几。
参考答案:
public class CalendarTest01 {
public static void main(String[] args) {
//创建Calendar对象
Calendar c = Calendar.getInstance();
//将给定的日历字段设置到Calendar对象中
c.set(Calendar.YEAR, 2018);
c.set(Calendar.MONTH, 1);
c.set(Calendar.DATE, 14);
//设置年
int year = c.get(Calendar.YEAR);
//设置月
int month = c.get(Calendar.MONTH)+1;
//设置日
int date = c.get(Calendar.DATE);
//设置星期
char week = getWeek(c.get(Calendar.DAY_OF_WEEK));
//输出结果
System.out.println(year+"年"+month+"月"+date+"日是星期"+week);
}
//定义方法,获取星期汉字
public static char getWeek(int a){
char[] c = {' ','日','一','二','三','四','五','六'};
return c[a];
}
}
需求:有2个字符串形式的日期数据,计算它们相距多少天?
参考答案:
public class Test01 {
public static void main(String[] args) throws Exception {
//解析字符串
String s1 = "2014年09/28 23时13分01秒";
DateFormat df = new SimpleDateFormat("yyyy年MM/dd HH时mm分ss秒");
Date d1 = df.parse(s1);
//解析字符串,获取一个时间对象
String s2 = "2009-02月12日 12时02分01秒";
df = new SimpleDateFormat("yyyy-MM月dd日 HH时mm分ss秒");
Date d2 = df.parse(s2);
//获取两个神机箭对象之间的毫秒值的差
long time = Math.abs(d1.getTime() - d2.getTime());
//除以每天的毫秒值,及计算一共相差多少天
int dayTime =(int) time / (60*60*24*1000);
System.out.println(dayTime);
}
}
参考答案:
public class Demo {
public static void main(String[] args) throws Exception {
//创建Scanner对象
Scanner sc = new Scanner(System.in);
//接收用户输入
System.out.println("请输入您的生日(yyyy-MM-dd)");
String dateStr = sc.nextLine();
//创建SimpleDateFormat对象
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
//判断日期是否正确
Date birthday = sdf.parse(dateStr); //异常直接抛
Date now = new Date();
if (birthday.after(now)) {
System.out.println("生日必须早于当前日期!");
return; //结束程序
}
//计算来到世界xx天
long millisecond = now.getTime() - birthday.getTime();
long days = millisecond / 1000 / 60 / 60 / 24;
System.out.println("您已经来到这个世界" + days + "天");
}
}
参考答案:
public class Demo {
public static void main(String[] args) throws Exception {
//创建Scanner对象
Scanner sc = new Scanner(System.in);
//创建SimpleDateFormat对象
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
//接收第1个生日
System.out.println("请输入第1个生日(yyyy-MM-dd)");
String dateStr1 = sc.nextLine();
//判断是否早于当前日期
Date birthday1 = sdf.parse(dateStr1);
if (birthday1.after(new Date())) {
System.out.println("生日必须早于当前日期!");
return;
}
//接收第2个生日
System.out.println("请输入第2个生日(yyyy-MM-dd)");
String dateStr2 = sc.nextLine();
//判断是否早于当前日期
Date birthday2 = sdf.parse(dateStr2);
if (birthday2.after(new Date())) {
System.out.println("生日必须早于当前日期!");
return;
}
//打印结果
if (birthday1.before(birthday2)) {
System.out.println("第一个生日大于第二个生日");
} else {
System.out.println("第一个生日小于第二个生日");
}
}
}
public class Demo {
public static void main(String[] args) {
//创建Calendar对象
Calendar cal = Calendar.getInstance();
//获得年、月、日、时、分、秒并打印在控制台
System.out.println("年: " + cal.get(Calendar.YEAR));
System.out.println("月: " + cal.get(Calendar.MONTH));
System.out.println("日: " + cal.get(Calendar.DAY_OF_MONTH));
System.out.println("时: " + cal.get(Calendar.HOUR_OF_DAY));
System.out.println("分: " + cal.get(Calendar.MINUTE));
System.out.println("秒: " + cal.get(Calendar.SECOND));
}
}
参考答案:
public class Demo {
public static void main(String[] args) {
//创建Calendar对象
Calendar cla = Calendar.getInstance();
//设置指定日期 月份要-1,所以设置的是9
cla.set(1949, 9, 1);
//定义一个数组存储星期
String[] weekArray = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
//获得星期值
int week = cla.get(Calendar.DAY_OF_WEEK);
//打印结果
System.out.println(weekArray[week - 1]);
}
}
需求:代码计算500天后是几几年几月几日。
参考答案:
public class Test05 {
public static void main(String[] args) {
// a)获取当前日历对象
Calendar c = Calendar.getInstance();
// b)调用日期对象的add()方法,让当前日历向后移动500天
c.add(Calendar.DATE, 500);
// c)获取日历中的年,月,日
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH);
int day = c.get(Calendar.DAY_OF_MONTH);
// d)输出几几年几月几日.
System.out.println(year + "年" + month + "月" + day + "日");
}
}
参考答案:
public class Demo {
public static void main(String[] args) {
//3的5次幂
System.out.println(Math.pow(3, 5));
//3.2 向上取整
System.out.println(Math.ceil(3.2));
//3.8 向下取整
System.out.println(Math.floor(3.8));
//5.6四舍五入
System.out.println(Math.round(5.6));
}
}
参考答案:
public class Demo {
public static void main(String[] args) {
//创建数组
int[] arr = {10, 27, 8, 5, 2, 1, 3, 55, 88};
//定义新数组
int[] arrNew = new int[5];
//拷贝元素
System.arraycopy(arr, 2, arrNew, 0, 5);
//打印结果
System.out.println(Arrays.toString(arrNew));
}
}
参考答案:
public class Demo {
public static void main(String[] args) {
//创建数组
int[] arr = {55, 77, 0, 88, 22, 44, 33};
//后四个元素前移
System.arraycopy(arr, arr.length - 4, arr, arr.length - 5, 4);
//最后一位置为0
arr[arr.length - 1] = 0;
//打印结果
System.out.println(Arrays.toString(arr));
}
}
参考答案:
public class Demo {
public static void main(String[] args) {
//创建List集合
List<Integer> list = new ArrayList<>();
//开始时间
long startTime = System.currentTimeMillis();
//添加元素
for (int i = 0; i < 10000000; i++) {
list.add(i);
}
//结束时间
long endTime = System.currentTimeMillis();
//打印结果
System.out.println("耗时:" + (endTime - startTime) + "毫秒");
}
}
参考答案:
public class Demo {
public static void main(String[] args) {
//声明数组
double[] arr = {0.1, 0.2, 2.1, 3.2, 5.56, 7.21};
//求和
double sum = sum(arr);
//平均值
double avg = avg(arr);
//打印结果
System.out.println("总和:" + sum);
System.out.println("平均值:" + avg);
}
/**
* 求和
* @param arr
* @return
*/
public static double sum(double[] arr) {
BigDecimal bigDecimal = new BigDecimal("0");
for (int i = 0; i < arr.length; i++) {
bigDecimal = bigDecimal.add(BigDecimal.valueOf(arr[i]));
}
return bigDecimal.doubleValue();
}
/**
* 平均值
* @param arr
* @return
*/
public static double avg(double[] arr) {
double sum = sum(arr);
BigDecimal bigDecimal = BigDecimal.valueOf(sum);
//四舍五入保留2位小数
BigDecimal result = bigDecimal.divide(BigDecimal.valueOf(arr.length), 2, RoundingMode.HALF_UP);
return result.doubleValue();
}
}
参考答案:
/**
* 学生
*/
public class Student {
//成员变量
private String name; //姓名
private String gender; //性别
private int age; //年龄
private double score; //分数
//空参
public Student() {
}
//全参构造
public Student(String name, String gender, int age, double score) {
this.name = name;
this.gender = gender;
this.age = age;
this.score = score;
}
//getter & setter 略
}
public class Demo {
public static void main(String[] args) {
//创建5个学生对象
Student stu1 = new Student("张三", "男", 20, 79.5);
Student stu2 = new Student("李四", "女", 21, 80.2);
Student stu3 = new Student("王五", "男", 22, 77.9);
Student stu4 = new Student("周六", "男", 20, 55.8);
Student stu5 = new Student("赵七", "女", 21, 99.9);
//分数求和
BigDecimal sum = new BigDecimal("0");
sum = sum.add(BigDecimal.valueOf(stu1.getScore()));
sum = sum.add(BigDecimal.valueOf(stu2.getScore()));
sum = sum.add(BigDecimal.valueOf(stu3.getScore()));
sum = sum.add(BigDecimal.valueOf(stu4.getScore()));
sum = sum.add(BigDecimal.valueOf(stu5.getScore()));
//求平均分,四舍五入保留2位小数
double avg = sum.divide(BigDecimal.valueOf(5), 2, RoundingMode.HALF_UP).doubleValue();
System.out.println("平均分:" + avg);
}
}
有一个String[]数组如下:
String[] nums = {“3.22”,”8.1”,”7”,”2.5”,”3.1”,”7.77”,”8.0”,”9.21”};
请编程计算它们的平均值,结果精确到小数点后两位。
参考答案:
public class Test {
public static void main(String[] args) {
String[] nums = {"3.22","8.1","7","2.5","3.1","7.77","8.0","9.21"};
BigDecimal result = new BigDecimal("0");//存储结果的BigDecimal
for (String num : nums) {//遍历数组
BigDecimal bd = new BigDecimal(num);//将数组的每个元素构造一个BigDecimal对象
result = result.add(bd);//累加到result中
}
//result / 数组长度,结果取2位小数,并且四舍五入
BigDecimal avg = result.divide(new BigDecimal(nums.length), 2, RoundingMode.HALF_UP);
System.out.println("平均值:" + avg.doubleValue());//打印结果
}
}
public class Demo {
public static void main(String[] args) {
//声明数组
int[] arr = {1, 332, 43, 25, 3324, 34, 335, 4, 45, 2, 43, 52, 54};
//打印数组所有元素
System.out.println(Arrays.toString(arr));
//升序排序
Arrays.sort(arr);
//再次打印
System.out.println(Arrays.toString(arr));
}
}
答案:
byte Byte
short Short
int Integer
long Long
float Float
double Double
char Character
boolean Boolean
答案:
自动装箱:将基本数据类型赋值给包装类型
自动拆箱:将包装类型赋值给基本数据类型
参考答案:
public class Demo {
public static void main(String[] args) {
//创建Scanner对象
Scanner sc = new Scanner(System.in);
//接收用户输入
System.out.println("请输入分数:");
String scoreStr = sc.nextLine();
//将字符串分数转换成int类型
int score = Integer.parseInt(scoreStr);
//分数+5并打印在控制台
System.out.println(score + 5);
}
}
请定义学员类,有以下成员属性:
姓名:String类型
年龄:int
身高:double
婚否:boolean
性别:char
请从控制台接收以下数据:
姓名:王哈哈
年龄:24
身高:1.82
婚否:false
性别:男
以上数据要求全部使用String类型接收
请创建“学员对象”,并将所有数据转换后,存储到这个对象中,最后打印此对象的所有属性。
学生类
参考答案:
/**
* 学生
*/
public class Student {
//成员变量
private String name; //姓名
private int age; //年龄
private double height; //身高
private boolean flag; //婚否
private char gender; //性别
//空参构造
public Student() {
}
//全参构造
public Student(String name, int age, double height, boolean flag, char gender) {
this.name = name;
this.age = age;
this.height = height;
this.flag = flag;
this.gender = gender;
}
//toString
@Override
public String toString() {
return "Student{" +
"name='" + name + '\'' +
", age=" + age +
", height=" + height +
", flag=" + flag +
", gender=" + gender +
'}';
}
//getter & setter 略
}
public class Demo {
public static void main(String[] args) {
//创建Scanner对象
Scanner sc = new Scanner(System.in);
//接收用户输入
System.out.println("请输入姓名:");
String name = sc.nextLine();
System.out.println("请输入年龄:");
String ageStr = sc.nextLine();
System.out.println("请输入身高:");
String heightStr = sc.nextLine();
System.out.println("请输入婚否:"); //必须输入 true 或 false
String flagStr = sc.nextLine();
System.out.println("请输入性别:");
String genderStr = sc.nextLine();
//转换
int age = Integer.parseInt(ageStr);
double height = Double.parseDouble(heightStr);
boolean flag = Boolean.parseBoolean(flagStr);
char gender = genderStr.charAt(0);
//封装
Student stu = new Student(name, age, height, false, gender);
//打印
System.out.println(stu);
}
}
读代码,控制台输出的结果为? ()
public class IntegerDemo {
public static void main(String[] args) {
String str = "123";
System.out.println(str + 10);
int i = Integer.parseInt(str);
System.out.println(i + 10);
}
}
A: 12310,133
B: 133,13310
C: 12310,13310
D: 133,133
答案:A
阅读代码,控制台输出的结果为? ()
public class IntegerDemo {
public static void main(String[] args) {
String str = "1a3";
Integer it = new Integer(str);
int i = it.intValue();
System.out.println(i);
}
}
A: 1a3
B: 13
C: 运行报错,字符串内容必须是数字字符
D: 1
答案:C
阅读代码,控制台要打印110横线需要填写什么? ()
public class IntegerDemo {
public static void main(String[] args) {
int i = 1;
Integer it = new Integer(i);
String s = ___;
System.out.println(s + 10);
}
}
A: it
B: it.toString();
C: i
D: 110
答案:B
阅读代码,控制台打印的结果为? ()
public class IntegerDemo {
public static void main(String[] args) {
int i = 10;
String str = i + "";
System.out.println(str.equals("10"));
}
}
A: false
B: true
C: 运行报错
D: 0
答案:B
下面说法错误的是:()
A:System类提供了数组复制的方法;开发中如果遇到数组复制的需求,使用它更高效;
B:Math类主要提供各种常见的数学运算的方法,而且全部都是静态的方法;
C:自动装箱和自动拆箱是JDK5出现的新技术,主要用来简化包装类对象和基本类型数据之间的转换的;
D:正则表达式是Java中独有的用来匹配字符串的技术;
答案:D;
解析:正则表达式不是Java中独有的技术。
参考答案:
public class Demo {
public static void main(String[] args) {
//创建Scanner对象
Scanner sc = new Scanner(System.in);
//接收用户输入
System.out.println("请输入邮箱地址:");
String email = sc.nextLine();
//判断是否合法
if (email.contains("@") && email.contains(".")) {
System.out.println("合法");
} else {
System.out.println("不合法的Email地址");
}
}
}
参考答案:
public class Demo {
public static void main(String[] args) {
//创建Scanner对象
Scanner sc = new Scanner(System.in);
//接收用户输入
System.out.println("请输入Java源码文件名(例如 Test.java):");
String filename = sc.nextLine();
//判断是否以.java结尾
boolean result = filename.endsWith(".java");
System.out.println("是否以.java结尾:" + result);
//获取.符号的索引位置
int index = filename.lastIndexOf(".");
System.out.println(".符号的索引位置:" + index);
}
}
参考答案:
public class Demo {
public static void main(String[] args) {
//创建Scanner对象
Scanner sc = new Scanner(System.in);
//接收用户输入
System.out.println("请输入发帖内容:");
String content = sc.nextLine();
//替换
String contentNew = content.replaceAll("特朗普", "*");
//打印结果
System.out.println(contentNew);
}
}
参考答案:
public class Demo {
public static void main(String[] args) {
//创建Scanner对象
Scanner sc = new Scanner(System.in);
//接收用户输入
System.out.println("请输入发帖内容:");
String content = sc.nextLine();
String[] keyArray = {"特朗普", "普京"};
//替换
for (int i = 0; i < keyArray.length; i++) {
String key = keyArray[i];
content = content.replaceAll(key, "*");
}
//打印结果
System.out.println(content);
}
}
参考答案:
public class Demo {
public static void main(String[] args) {
//创建Scanner对象
Scanner sc = new Scanner(System.in);
//接收用户输入
System.out.println("请输入文件名:");
String filename = sc.nextLine();
//打印文件名的第一个字符
System.out.println("第一个字符:" + filename.charAt(0));
//打印后缀,包含.
System.out.println("文件后缀名:" + filename.substring(filename.lastIndexOf(".")));
//首字母大写,其他字母小写的效果
filename = filename.substring(0, 1).toUpperCase() + filename.substring(1).toLowerCase();
System.out.println("转换后效果:" + filename);
}
}
参考答案:
/**
* 学员
*/
public class Student {
//成员变量
private String name; //姓名
private int age; //年龄
private char gender; //性别
//空参构造
public Student() {
}
//全参构造
public Student(String name, int age, char gender) {
this.name = name;
this.age = age;
this.gender = gender;
}
//toString
@Override
public String toString() {
return "Student{" +
"name='" + name + '\'' +
", age=" + age +
", gender=" + gender +
'}';
}
//getter & setter 略
}
public class Demo {
public static void main(String[] args) {
//创建Scanner对象
Scanner sc = new Scanner(System.in);
//接收用户输入
System.out.println("请输入学生信息");
String info = sc.nextLine();
//处理数据
info = info.replaceAll(" ", "");//空格替换成空字符串
String[] split = info.split(",");//以逗号截取
String name = split[0];
int age = Integer.parseInt(split[1]);
char gender = split[2].charAt(0);
//封装数据到Student对象中
Student stu = new Student(name, age, gender);
//打印结果
System.out.println(stu);
}
}
原文链接:https://qwert.blog.csdn.net/article/details/105378191