数组的格式:
数据类型[] 数组名= new 数据类型[数组的长度]
数组的初始化:
注意:在数组声明时,如果不给数组直接赋值,那么,byte/short/int/long/的默认值为0,float和double的默认值为0.0,特别需要注意的是布尔类型的默认值为false;
数组的下标从0开始
public class ArrayDemo01 {
public static void main(String[] args) {
//声明数组
int[] arr = new int[5];
System.out.println(arr[0]);
boolean[] brr = new boolean[5];
System.out.println(brr[0]);
char[] crr = new char[5];
System.out.println(crr[0]);
if (crr[0] == 0) {
System.out.println("char数组的默认值为0");
}
System.out.println("------");
}
}
结果:
数组的遍历:
public class ArrayDemo02 {
public static void main(String[] args) {
//声明数组
int[] arr1 = new int[]{1,2,3,4,5};
System.out.println(arr1[0]);
System.out.println(arr1[1]);
System.out.println(arr1[2]);
System.out.println(arr1[3]);
System.out.println(arr1[4]);
//数组的遍历
int[] arr2 = new int[20];
for (int i=0; i < arr2.length; i++ ){
System.out.println(arr2[i]);
}
}
}
摇号,双色球
import java.util.Random;
import java.util.Scanner;
//双色球案例
//共7个号码,其中红球6个,范围1-33,蓝球1个范围是1-17
public class DoubleColorBall {
public static void main(String[] args) {
///声明一个int类型 长度为7的唯一数组,动态
int[] arr = new int[7];
//创建一个随机数对象
Random random = new Random();
//开始摇号(向数组当中去添加值),需要先摇6红球,范围1-33
for (int i=0;i < arr.length-1;i++) {
//红球
arr[i] = random.nextInt(34);
//去重
for (int j = i-1; j >= 0;j--) {
//表示号码重复了
if (arr[i] == arr[j]) {
//若号码出现重复,需要重新摇号
i--;
break;
}
}
}
//蓝球
arr[arr.length-1] = random.nextInt(17)+1;
//将数组中的双色球遍历
System.out.print("本期中奖结果:");
for (int i = 0;i < arr.length;i++) {
System.out.print(arr[i] + " ");
}
}
}
对象:(万事万物皆对象)
在java中,对象是指客观存在的实体
main方法是程序的入口,通常情况下,类名的首字母要大写,有多个单词构成时,每个单词的首字母都要大写(大驼峰命名法 UpperCamelCase)
成员变量(特征、属性)
语法格式:
[权限修饰符] 数据类型 成员变量名 = 成员变量值;
其中等号和成员变量值可以省略,通常情况下都省略,分号不可以省略!
通常情况下,成员变量名的首字母要小写,当成员变量名由多个单词构成时,从第二个单词开始,首字母要大写(小驼峰命名法 lowerCamelCase)
引用的语法格式: 引用数据类型 引用变量名 = new 引用数据类型();
eg : Person p = new Person()
引用的使用方法: 引用名.成员变量名 = 成员变量值;
eg : p.name = "大脑斧";
注意:当一个类被定义完毕后,可以使用new关键字来创建该类的对象,这个过程被称为类的实例化。类是对象的抽象,对象是类的实现。
定义一个坐标类,特征有,横坐标x和纵坐标y,创建坐标类的对象,将对象的信息打印出来,修改特征信息,并再次打印。
public class Point {
int x;
int y;
public static void main(String[] args) {
//创建一个Point类型的引用point,指向Point类型的对象
Point point = new Point();
System.out.println("x = " + point.x);
System.out.println("y = " + point.y);
point.x = 3;
point.y = 4;
System.out.println("x = " + point.x);
System.out.println("y = " + point.y);
}
}
自定义Phone类,特征有:品牌和价格,行为有: 打印品牌和价格的方法要求在main()方法声明Phone类型的引用指向Phone类型的对象并打印特征将品牌和价格修改为"Nokia"
public class Phone {
String brand;
double price;
public void show() {
System.out.println("品牌" + brand + "价格" + price);
}
public static void main(String[] args){
Phone p = new Phone();
p.show();
p.brand = "Nokia";
p.price = 598.5;
p.show();
}
}
编程实现Person类的定义,特征有: 姓名和年龄要求在main方法声明Per3on类型的引用指向Peron类型的对象并打印特征,再将姓名和年龄修改为"zhangfei"和30后再次打印。
public class Person {
String name;
int age;
public void show() {
System.out.println("姓名" + name + "年龄" + age);
}
public static void main(String[] args){
Person p = new Person();
p.show();
p.name = "zhangfei";
p.age = 30;
p.show();
}
}
//编程实现Gir类的定义,特征有:姓名、年龄、是否有男朋友bf,行为有:打印所有特征的方法, // 要求在main方法中声明Girl类型的引用指向Girl类型的对象并打印特征,然后修改特征为” // 貂蝉”、18以及true后再次打印 //自定义成员方法实现将姓名修改为参数指定的数值 // 自定义成员方法实现将年龄修改为参数指定的数值 // 自定义成员方法实现将是否有男朋友修改为参数指定的数值 // 自定义成员方法实现姓名的获取并返回 // 自定义成员方法实现年龄的获取并返回 // 自定义成员方法实现是否有男朋友的获取并返回
alt + insert 选 getset
ctrl + a 全选
public class Girl {
String name;
int age;
boolean bf;
public void print() {
System.out.println("姓名" + name + " 年龄" + age + " 是否有男朋友" + bf);
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public boolean isBf() {
return bf;
}
public void setBf(boolean bf) {
this.bf = bf;
}
public static void main(String[] args){
Girl g = new Girl();
g.print();
g.name = "貂蝉";
g.age = 18;
g.bf = true;
g.print();
}
}
ctrl + shift + t 调出测试类