目录
数组
冒泡排序
For循环
面向对象
1、声明
int[] age ;
或: int age[];
2、分配内存
int[] age = new int[5];
3、 赋值
int[] age = new age[5];
age[0] =2;
age[1] = 3;
或 :
int age[] ={2,3,45,35,67};
int[] age = new age[]{2,3,45,35,67};
图片展示:
冒泡排序
java代码
int[] age = { 34, 23, 56, 12, 80 };
int temp;
for (int i = 0; i < age.length - 1; i++) {
for (int j = 0; j < age.length - 1 - i; j++) {
if (age[j] > age[j + 1]) {
temp = age[j + 1];
age[j + 1] = age[j];
age[j] = temp;
}
}
}
for (int j = 0; j < age.length; j++) {
System.out.println(age[j]);
}
}
1.升序排序方法 :Arrays.sort(age);//升序排序函数
2.截取数组元素: Arrays.copyOfRange(int[] original, int from, int to) 将指定数组的指定范围复制到一个新数组。
3.复制数组元素: System. arraycopy(Object src, int srcPos, Object dest, int destPos, int length) 从指定源数组中复制一个数组,复制从指定的位置开始,到目标数组的指定位置结束。
二维数组声明和赋值
int[][] age = new int[4][];
age[2] = new int[]{2,3,6};
System.out.println(age[2][2]);
int[][] age2 = {{1,2,5},{8,6,4},{4,7,6}};
System.out.println(age2[2][2]);
大小写互换
String s = "wSDEtrgda";
s = s.substring(2,5);
char s1 = s.charAt(2);
System.out.println(s);
String s2 = "";
for (int i = 0; i < s.length(); i++) {
char c = s.charAt(i);
if (Character.isLowerCase(c)) {
c = Character.toUpperCase(c);
} else {
c = Character.toLowerCase(c);
}
s2 += c;
}
System.out.println(s2);
数组和For循环语句的练习
1、判断所输入的地址是不是邮箱地址
Scanner scanner = new Scanner(System.in);
System.out.println("请输入:");
String email = scanner.next();
if (email.contains("@")) {
int num = email.indexOf("@");
String start = email.substring(0, num);
boolean startIsLetter = true;
for (int i = 0; i < start.length(); i++) {
char c = start.charAt(i);
if (!Character.isLetterOrDigit(c)) {
System.out.println("不是邮箱啊!");
startIsLetter = false;
break;
}
}
if (startIsLetter) {
if (email.contains(".")) {
int num2 = email.lastIndexOf(".");
String middle = email.substring(num + 1, num2);
boolean middleIsLetter = true;
for (int j = 0; j < middle.length(); j++) {
char c2 = middle.charAt(j);
if (!Character.isLetterOrDigit(c2)) {
System.out.println("不是邮箱啊!");
middleIsLetter = false;
break;
}
}
if (middleIsLetter) {
if (email.endsWith(".com") || email.endsWith(".cn") || email.endsWith(".net")) {
System.out.println("是邮箱地址哦!");
}
}
}
}
}
else{
System.out.println("不是邮箱啊!");
}
}
}
2、随即输入10个数到数组,然后从小到大排序
public static void main(String[] args) {
int[] num = new int[10];
int temp = 0;
for (int i = 0; i < num.length; i++) {
Random rd = new Random();
num[i] = rd.nextInt(90) + 10;
}
for (int i = 0; i < num.length - 1; i++) {
for (int j = 0; j < num.length - 1 - i; j++) {
if (num[j] > num[j + 1]) {
temp = num[j + 1];
num[j + 1] = num[j];
num[j] = temp;
}
}
}
for (int i = 0; i < num.length; i++) {
System.out.print(" " + num[i]);
}
}
面向对象思想:世界由对象组成
一个类中只有: 属性、 方法
例:一个学生类
public class Student {
//属性
public String name;
public int age;
public String sex;
//学生吃饭的方法
public void eat(){
System.out.println("学生"+name+"要吃饭");
}
//学生学习的方法(不带参)
public String learn(){
System.out.println("好好学习!");
return name;
}
//一个代参的方法
public void run(int runfar){
System.out.println("学生跑步");
}
}