java学习笔记

  • Java泛型<T>与T的用法
    • <T>表示"返回值"是一个泛型,传递什么类型,就返回什么类型;
    • T表示限制传递的参数类型;
  • Arrays.asList()

该方法是将数组转化成List集合的方法。

List<String> list = Arrays.asList("a","b","c");

注意:

    1. 该方法适用于对象型数据的数组(String/Integer...)
    2. 该方法不建议使用于基本数据类型的数组(byte/short/int/long/float/double/boolean)
    3. 该方法将数组与List列表链接起来:当更新其中一个时,另一个自动更新
    4. 不支持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
-------------------------------------

  

 

posted @ 2020-09-27 13:16  zhouhl  阅读(150)  评论(0)    收藏  举报