java学习日记2

java循环

while循环:不知道循环次数。先判断,再循环。常用死循环。用死循环时就要判断什么时候手动让他停止,而这个时候就常会定义一个Boolean类型的变量,

while(循环条件){
    循环操作;
    }

循环条件是要是布尔值,一般可是判断表达式,True继续循环,False终止循环

 while(i<100){

    system.out.println(i)

     i++;

          }

     }  

}

while(true) {
			System.out.println(i);
			// i = i+1;
			// i += 1;
			// i++; 
			if(i >100) {
				break;
			}

用死循环时就要判断什么时候手动让他停止,而这个时候就常会定义一个Boolean类型的变量,让他初始值为true,到循环该结束时,让他的值为false或者直接break

例`

while(i<100){

    system.out.println(i)

     i++;

          }
     }      
}`

让他初始值为true,到循环该结束时,让他的值为false。

for循环
r使用的场景是:知道循环次数的情况下使用for循环

格式

for(表达1;表达式2;表达式3){   //表达式1一般写i的初始值,表达式2 写i的范围,表达式写i的变化,如i++
    循环体;
}

解读:for()循环的执行过程是:1、先执行表达式1的语句,2、再执行表达式2语句,如果表达式2 成立时,则执行循环体的语句,最后执行表达式3,这样从表达式1至表达式3依次执行,当表达式2不成立时,退出循环

例子:

        int  sum =0;    
    
      for (int i=1;i<100;i++){
    
          sum=sum+i;
    
              }   

system.out.println(sum);

     }

}

数组

数组的定义

float[] arr = new float[10];    //  arr可以装10个float数据
int[] arr2 = new int[8];       // arr2可以装8个int数据
String[] arr3 = new String[7];  //arr3 可以装7个String数据

或者说直接填充

int[] arr=new arr[]{1,3,5,7,9} //这样就可以不用定义长度,长度由此时填入的数据量 所决定

注意:数组有一个常用的属性:length
int length= arr.length;

数组的填充

如何向数组中填数据

arr[0] = 1.8;
arr2[2]=5;
arr3[1] = "zhangsan";

如果要批量自动装数据:用for循环

for(int i=0;i<10;i++){
   arr[i] = i;
}

例题求最大值和最小值

for(int i=1;i<5;i++){
	if(max<scoreArr[i]){max=scoreArr[i];}
	if(min>scoreArr[i]){min=scoreArr[i];}
}
System.out.println("最大值是"+max);
System.out.println("最小值是"+min);

一般先创建一个临时变量,然后让该变量和每个值比较

冒泡排序法

for(int i=0;i<arr.length-1;i++) {
			for(int j=0;j<arr.length-1-i;j++) {
				// 如果顺序不对就调换位置
				if(arr[j] > arr[j+1]) {
					int tmp = arr[j];
					arr[j] = arr[j+1];
					arr[j+1] = tmp;

输入和输出

输入用Scanner一般都是字符串型,所以当需要int或者float时,需要用特殊方法转得。

Scanner scn=new Scanner(System.in);
String name=scn.nextLine();//字符型直接得
int num=Integer.parseInt(scn.nextLine());  //int型一般用Integer.parseInt(scn.nextLine())转得
Float score=Float.parseFloat(scn.nextLine());Float型用.parseFloat(scn.nextLine())转的

输出

System.out.println('输出的东西')

类的定义和调用

类的定义:类是一个模板,它描述一类对象的行为和状态。可以封装多种数据类型。
对象: 对象:对象是类的一个实例有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。,根据类模板创建出来的一套具体数据(可以用该类型的变量来引用)

类成员类
可以有三种类型的成员

  1. 域(feld):与类及其对象相关联的数据变量,其中保存着类或对象的状态

  2. 方法( method):包含类的可执行代码并定义了对象的行为。

  3. 嵌套类( nested class)和嵌套接口( nested inferface):嵌套类和嵌套接口是那些嵌套在其他类或接口中的类和接口。本章我们主要讨论基本成员:域和方法。嵌套成员在第5章讨论。

类的声明

public class StudentInfo {
	String name;
	String stuNbr;
	int age;                         //类的域
	float score;
}

域的初始化的几种方式

double zero =0.0//常量
double sum =4//常量表达式
double zerocopy zero//域
double roottwo=Math,sqrt(2);//方法调用
double someva1=Sum+2Math.sqrt( roott wo);//混合情况

注:如果没有初始化,那么就按其类型赋予初始值

在这里插入图片描述

创造对象

StudentInfo stu1= new StudentInfo();  //创造该类的对象
为对象的属性赋值:
stu1.name = "张三";
stu1.stuNbr = "001";

StudentInfo stu2= new StudentInfo();  //创造该类的对象
为对象的属性赋值:
stu1.name = "李四";
stu1.stuNbr = "002";

首先声明引用变量(stu1),它可以引用Studentlnfo类型的对象。利用new运算符创建 StudentInfo。new是到现在为止最常用的创建对象的方法。

获取对象的属性:

System.out.printlt(stu.name);

构造方法

package day1;

public class costmer {
	
	String id;
	String name;
	int age;
	String sex;
	String phone;
	String addr;
	public costmer (){}          //一般要构造一个不含参数的构造方法
	
	public costmer (String id,String name,int age,String sex,String phone,String addr){     //构造方法无需声明类型
		this.id= id;
		this.name= name;
		this.age= age;
		this.sex= sex;
		this.phone= phone;
		this.addr= addr;
	}
}

通过方法所构造的对象

	costmer c1 =new costmer(split1[0],split1[1],Integer.parseInt(split1[2]),split1[3],split1[4],split1[5]);
	
	costmer c2 =new costmer(split2[0],split2[1],Integer.parseInt(split2[2]),split2[3],split2[4],split2[5]);
	
	costmer c3 =new costmer(split3[0],split3[1],Integer.parseInt(split3[2]),split3[3],split3[4],split3[5]);
	

将类存入数组的两种方法
法1

costmer[] cs=new costmer[] {c1,c2,c3};

法2

    costmer[] cs = new costmer[3];
        t[0] = c1;
        t[1] = c2;
        t[2] =c3;

调用数组中类的属性

cs[0].name
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值