java学习笔记
- Java泛型<T>与T的用法
- <T>表示"返回值"是一个泛型,传递什么类型,就返回什么类型;
- T表示限制传递的参数类型;
- Arrays.asList()
该方法是将数组转化成List集合的方法。
List<String> list = Arrays.asList("a","b","c");
注意:
- 该方法适用于对象型数据的数组(String/Integer...)
- 该方法不建议使用于基本数据类型的数组(byte/short/int/long/float/double/boolean)
- 该方法将数组与List列表链接起来:当更新其中一个时,另一个自动更新
- 不支持add()/remove()/clear()等方法
- json中的json.parseObject()方法和json.tojsonString()方法
- 字符串转对象 前端对于从后端获取到的字符串的处理
- JSON.parseObject(),是将Json字符串转化为相应的对象;
- var u = eval('('+user+')'); 将服务器返回的字符串转换为对象,存在安全问题
- $.getJSON() 获取服务器返回的JSON字符串已经是json对象了
- 字符串转对象 前端对于从后端获取到的字符串的处理
- 对象转字符串 后台给前台发送数据以字符串的形式
- JSON.toJSONString()则是将对象转化为Json字符串。
- 求杨辉三角
package javaDemo8; /* * 求杨辉三角 */ public class lx3 { public static void main(String[] args) { int[][] a=new int[5][5]; //输出杨辉三角的数 for(int i=0;i<5;i++){ //前面的空 for(int k=4-i;k>=0;k--){ System.out.print(" "); } //产生a[i][j]的值 for(int j=0;j<=i;j++){ if(j==0){ a[i][j]=1; }else if(j==i){ a[i][j]=1; }else{ a[i][j] = a[i-1][j-1]+a[i-1][j]; } System.out.print(a[i][j]+" "); } //换行 System.out.println(); } } }
//结果
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
2.设计一个类(课堂案例com.lx1),使用多个数组存储学生的姓名和多个成绩信息(语文、英语),请使用构造方法初始化数据,建议3个学生的各种成绩。
编写一个方法,输入学生信息,查询该学生的总分成绩返回。
1 package com.lx3; 2 3 import java.util.Arrays; 4 import java.util.Scanner; 5 6 /* 7 * 1.建立3个数组,分别存放学生的姓名、语文成绩、英语成绩 8 * 2.录入学生成绩并展示 9 */ 10 public class Class { 11 public int n = 3; 12 public String[] names = new String[n]; 13 public double[] chineses = new double[n]; 14 public double[] englishes = new double[n]; 15 public double[] scores = new double[n]; 16 Scanner input = new Scanner(System.in); 17 18 //学生成绩录入 19 public Class(){ 20 for(int i=0;i<n;i++){ 21 System.out.println("请输入姓名"); 22 String name = input.next(); 23 names[i] = name; 24 System.out.println("请输入语文成绩"); 25 double chinese = input.nextDouble(); 26 chineses[i] = chinese; 27 System.out.println("请输入英语成绩"); 28 double english = input.nextDouble(); 29 englishes[i] = english; 30 double score = chinese + english; 31 scores[i] = score; 32 } 33 } 34 //学生成绩展示 35 public void show(){ 36 System.out.println("*******************"); 37 System.out.println("学生成绩如下:"); 38 System.out.println("姓名"+"\t"+"语文"+"\t"+"英语"+"\t"+"总分"); 39 for(int i=0;i<n;i++){ 40 System.out.print(names[i]+"\t"+chineses[i]+"\t"+englishes[i]+"\t"+scores[i]); 41 System.out.println(); 42 43 } 44 System.out.println("*******************"); 45 } 46 }
1 #主函数 2 package com.lx3; 3 4 public class Main { 5 public static void main(String[] args) { 6 Class c = new Class(); 7 c.show(); 8 } 9 }
#结果
*******************
学生成绩如下:
姓名 语文 英语 总分
水飞蓟 99.0 96.0 195.0
小黄鸡 79.0 91.0 170.0
艾麦尔 79.0 100.0 179.0
*******************
3.按总分对班级学生成绩排序
student类:
package com.lx2;
public class Student {
private String name;
private int yuwen;
private int shuxue;
public Student(String name, int yuwen, int shuxue) {
super();
this.name = name;
this.yuwen = yuwen;
this.shuxue = shuxue;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getYuwen() {
return yuwen;
}
public void setYuwen(int yuwen) {
this.yuwen = yuwen;
}
public int getShuxue() {
return shuxue;
}
public void setShuxue(int shuxue) {
this.shuxue = shuxue;
}
}
主函数:
package com.lx2;
public class Main {
public static void main(String[] args) {
Student s1 =new Student("张三",100,45);
Student s2 =new Student("李四",70,15);
Student s3 =new Student("王麻子",90,85);
Student s4 =new Student("赵武",81,45);
Student s5 =new Student("老王",18,94);
//存放学生对象的容器
Student[] stus = {s1,s2,s3,s4,s5};
//此处你来做,提示换位置时,临时变量类型为 Student temp
for(int i=0;i<stus.length-1;i++){
for(int j=0;j<stus.length-i-1;j++){
if((stus[j].getShuxue()+stus[j].getYuwen())<(stus[j+1].getShuxue()+stus[j+1].getYuwen())){
Student temp = stus[j];
stus[j] = stus[j+1];
stus[j+1] = temp;
}
}
}
System.out.println("名次\t姓名\t语文成绩\t数学成绩\t总分");
System.out.println("-------------------------------------");
for(int i=0;i<stus.length;i++) {
System.out.println((i+1)+"\t"+stus[i].getName()+"\t"+stus[i].getYuwen()+"\t"+stus[i].getShuxue()+"\t"+(stus[i].getShuxue()+stus[i].getYuwen()));
System.out.println("-------------------------------------");
}
}
}
结果:
名次 姓名 语文成绩 数学成绩 总分
-------------------------------------
1 王麻子 90 85 175
-------------------------------------
2 张三 100 45 145
-------------------------------------
3 赵武 81 45 126
-------------------------------------
4 老王 18 94 112
-------------------------------------
5 李四 70 15 85
-------------------------------------

浙公网安备 33010602011771号