Java-Day02学习

news/2024/9/20 6:58:36 标签: java, 学习

Java-Day02

一维数组

java">1.声明数组  int[ ] a;   //声明数组时不规定数组长度
2.分配空间  a = new int[5];  //分配空间: 告诉计算机分配几个连续的空间。eg:scores = new int[30];  avgAge= new int[6];     name = new String[30];
3.赋值      a [0] = 8;   //向分配的格子里放数据scores[0] = 89;scores[1] = 79;
4.处理数据  a [0] = a[0] * 10;


//声明一个变量就是在内存空间划出一块合适的空间
//声明一个数组就是在内存空间划出一串连续的空间



数组赋值:
方法1: 边声明边赋值 //创建数组并赋值的方式必须在一条语句中完成
    char 类型数组
    char[] arry5 = {'c','a'};
    string 类型数组
    String[] strArray = {"Hello", "World", "Java", "Programming", "Language"};
    int类型数组
    int [ ] scores = {60, 80, 90, 70, 85};
    浮点型
    float[] str1 = {}
    double[] arry4 = {19.1567,18.15673};

方法2:动态地从键盘录入信息并赋值
	Scanner input = new Scanner(System.in);
	for(inti = 0; i < 30; i ++){
        scores[i] = input.nextInt();
    }

Arrays类

java">Arrays类提供操作数组的方法,如:排序、查询
import java.util.Arrays;
Arrays类的sort()方法: 对数组进行升序排列
    Arrays.sort(数组名);
eg:
        int[] score = {60,80,90,70,85};
        Arrays.sort(score);
        for (int i=0;i<score.length;i++){
            System.out.print(score[i]+"\t");
        }
输出: 60	70	80	85	90

二维及多维数组

java">定义
//一步写出来多维数组的定义
int [ ][ ] scores = new int[5][50];

//分步写出来多维数组的定义
int [ ][ ] scores;   //定义二维数组
scores=new int[5][50];  //分配内存空间



赋值
int[][] scores=new int[][]{ { 90, 85, 92, 78, 54 }, { 76, 63,80 }, { 87 }};
or
int scores[][] = {{ 90, 85, 92, 78, 54 }, { 76, 63,80 }, { 87 } };



//二维数组实际上是一个以一维数组做为元素的一维数组,因此,第一个[]代表的是有多少个一维数组,第二个[]代表的是每个一维数组中有多少个元素;说白了第一个[]代表行,第二个[]代表列
eg:int [ ][ ] s = new int[3][4];
s[3][4]  	=	s[0][0]  s[0][1] s[0][2] s[0][3]
    	  		s[1][0]  s[1][1] s[1][2] s[1][3]
    			s[2][0]  s[2][1] s[2][2] s[2][3]

类和对象

java">类:具有相同属性和方法的一组对象的集合;类是对象的抽象,对象是类的具体;

对象的属性和方法对象:用来描述客观事物的一个实体,由一组属性和方法构成对象的属性和方法
    
    //属性(名词)
    
    /**
    方法(动词)
    方法 定义 某种行为(或功能)
	eg:	public void show(){
		System.out.println("姓名:" + name + ",密码:" + password);}
	*/

方法

java">调用方法前一定要实例化,再调用
   	Tour_ticket tt = new Tour_ticket();
	String message = tt.ticket(use_name,use_age);

1.如果方法具有返回值,方法中必须使用关键字return返回该值,返回值类型为该值的类型;返回值只能有一个
public class Student{
    String name = "张三";
	public String  getName(){
        return name;
    }
}



2.如果方法没有返回值,返回值类型为void
    public void Teach(){
        System.out.println("王老师在教课!!");
    }

tips:方法名 命名规则
(1)驼峰命名规则(2)有意义
    
方法之间允许相互调用,不需要知道方法的具体实现,实现重用,提高效率
   public class Student1 {
        public voida() {b();} //调用Student2 的b方法b()} 
   }
   public class Student2 {
       b();
   }
	
      

String字符串

java">字符串的写法和定义
String s = "Hello World";
String s = new String();
String s =new String("Hello World");

常用函数和方法:
1.字符串的长度,length()方法:返回字符串中的字符数
    String s = "123123";
	System.out.println(s.length());  //结果6

2.比较字符串,equals()方法:比较存储在两个字符串对象的内容是否一致
        String S="TOM" 
        if(S == uname.equals("TOM")){
            System.out.println("S和"+"TOM字符一致");
        }

	str1==str2 和 equals()方法的区别:
	前者会比较两个字符串在内存中的首地址,即判断是否是同一个字符串对象
	而equals()方法仅仅检查 组成字符串 内容 的字符是否完全一致
    
	equalsignorecase() 方法用于比较两个字符串,忽略大小写,两个字符串相等,则返回 		true;否则返回 false
    
	toLowerCase()将字符串中的所有字符转换为小写
	String str = "Hello, World!";
	String lowerCaseStr = str.toLowerCase();
	System.out.println(lowerCaseStr);   //输出hello, world!

	toUpperCase() 用于将字符串转换为大写
        
3.提取字符串
    //常用提取方法indexOf,lastIndexOf,substring
    搜索第一个出现的字符ch(或字符串value)
    public int indexOf(intch) 
    public int indexOf(String value)
     	String str = "Hello, World!";
		int index = str.indexOf('o'); // 查找字符'o'的位置,如果不存在值为-1
		System.out.println("第一次出现 'o' 的位置是: " + index); //输出 4 
    
    搜索最后一个出现的字符ch(或字符串value)
    public int lastIndexOf(intch) 
    public int lastIndexOf(String value)
    
    //substring()方法用于从字符串中提取子字符串
    public String substring(intindex) //截取从intindex后的所有字符
    public String substring(int beginindex,int endindex)//提取beginindex开始	位置;endindex结束位置;
	String str = "Hello, Java!";
	String result = str.substring(7); // 输出7以后的字符: "Java!"
	String subStr2 = str.substring(0, 5); // 输出: "Hello"
        
        
        
    public String trim()//用于去除字符串首尾的空白字符,包括空格、制表符、换行	符等
	String str = "  Hello World  ";
	String trimmedStr = str.trim();
	System.out.println(trimmedStr); // 输出: Hello World

    
4.拼接字符串concat()函数
	String str1 = "Hello";
	String str2 = "World"; 
	String result = str1.concat(str2); //结果为 "HelloWorld"。
    
5.拆分字符串
	split()方法:将一个字符串分割为子字符串,结果作为字符串数组返回
	String words="长亭外 古道边 芳草碧连天 晚风扶 柳笛声残 夕阳山外山";
	String[] printword=new String[100]	 //把words按照空格分成多个元素放进数组中去
	printword=words.split(" ");
    




StringBufferString增强版
    对字符串频繁修改时,使用StringBuffer.
    
	StringStringBuffer 的区别:
            String 是不可变的,一旦创建了一个 String 对象,就不能更改它的内容。		 每次对 String 进行修改操作,都会创建一个新的 String 对象。频繁修改字符		串内容的情况下,可能会导致性能问题

            StringBuffer 是可变的,StringBuffer 允许你修改其内容而不创建新的对		  象。在需要频繁修改字符串时,提高字符串操作的性能。StringBuffer 提供了			一系列方法来修改和操作字符串,例如 append()insert()delete() 等,		 这些方法都允许在原始字符串上进行操作而不创建新的对象。

    创建一个StringBuffer
	StringBuffer sb = new StringBuffer(); //创建空StringBuffer对象
	StringBuffer sb = new StringBuffer("aaa"); //创建一个变量存储字符串aaa

	函数:
		sb.toString();           //转化为String类型
		sb.append("**");      //追加字符串
		sb.insert(1,"**");    //插入字符串,插入位置的字符向后移动

在这里插入图片描述


http://www.niftyadmin.cn/n/5666793.html

相关文章

在WPF中自定义控件时如何选择基类

在WPF中需要自定义控件&#xff0c;首要要选择需要继承的基类 FrameworkElement 这是常用的最低级的基类。通常&#xff0c;只有当希望重写OnRender()方法并使用DrawingContext从头绘制内容时&#xff0c;才会继承该类。 Control 当从头开始创建控件时&#xff0c;这是最常用…

[Redis][String][上]详细讲解

目录 0.前言1.常见命令1.SET2.GET3.MSET && MGET4.SETNX && SETXX 2.计数命令1.INCR2.INCRBY3.DECR4.DECYBY5.INCRBYFLOAT6.注意 0.前言 字符串类型是Redis最基础的数据类型&#xff0c;关于字符串需要特别注意&#xff1a; Redis中所有的键的类型都是字符串类…

tasklist命令的应用实例

tasklist命令的应用实例 引言 在系统管理和故障排查过程中&#xff0c;了解当前正在运行的进程信息是至关重要的。Windows操作系统提供了一个强大的命令行工具——tasklist&#xff0c;它可以帮助用户查看当前系统中所有正在运行的进程及其相关信息。掌握这个命令的使用&…

通过npm安装 pnpm

安装pnpm npm install -g pnpm 获取当前配置的镜像地址 pnpm config get registry 设置新的镜像地址 pnpm set registry https://registry.npmmirror.com pnpm和npm的优劣 npm:优势&#xff1a;npm 是 Node.js 官方提供的包管理工具&#xff0c;它是默认的包管理器。具有广泛的…

java配置阿里云存储文件

1.maven导入依赖 <dependency><groupId>com.aliyun.oss</groupId><artifactId>aliyun-sdk-oss</artifactId><version>3.17.4</version></dependency> 如果使用的是Java 9及以上的版本&#xff0c;则还需要添加JAXB相关依赖。…

Unity教程(十六)敌人攻击状态的实现

Unity开发2D类银河恶魔城游戏学习笔记 Unity教程&#xff08;零&#xff09;Unity和VS的使用相关内容 Unity教程&#xff08;一&#xff09;开始学习状态机 Unity教程&#xff08;二&#xff09;角色移动的实现 Unity教程&#xff08;三&#xff09;角色跳跃的实现 Unity教程&…

leetcode刷题day23|回溯算法Part02(39. 组合总和 、40.组合总和II、131.分割回文串)

39. 组合总和 思路&#xff1a;这个题与77. 组合的差异在于元素可以无限制重复被选取&#xff0c;那么只需要更改startIndex即可&#xff0c;每一层递归都可以从头选用元素。 回溯三部曲与77. 组合基本一致。 代码如下&#xff1a; class Solution {List<List<Intege…

自定义复杂AntV/G6案例

一、效果图 二、源码 /** * * Author: me * CreatDate: 2024-08-22 * * Description: 复杂G6案例 * */ <template><div class"moreG6-wapper"><div id"graphContainer" ref"graphRef" class"graph-content"></d…