java常用类

目录

        1 String类

1字符串的构造方法:

2.常量池

3 .字符串的比较

1 equals

2 equalsIgnorecase

3.字符串长度:

4.拼接字符串

5.获取单个字符:

6.子字符串的索引(首个)

7.截取字符串

8.将String的转换为数组:

9.replace用法

10.split()用法

11.String的具体练习:

2.Arrays类

1.将数组变成字符串

2.sort 升序排序

3.Math类

1.abs绝对值

2.ceil向上取整

3.floor向下取整

4.round四舍五入

5.max/min最大最小

4.Scanner类

  1.导入包:

2.创建对象:eg:myObj

3.调用对象:

5.Random类

6 ArrayList类

1 创建对象list

2 添加add

3 删除remove

4 输出

5 长度size

6 提取get

7 排序sort

8 倒序输出

9 更改元素

10 将一个数组变成一个ArrayList类创建的对象

11 截取部分元素

7 StringBuffer类与String类结合使用

构造方法

1 使用StringBuffer创建对象

2 append添加

3 delete删除

4 reverse倒置

5 charAt提取字符

6 replace区间字符替换

7 substring提取字符串

8 insert插入字符串

9 toString 变成字符串


几个特殊类;(String,Arrays,math,Scanner,Random,ArrayList,StringBuffer)

1 String类

1字符串的构造方法:

public class an2{public static void main(String[] args){//直接构造String stringArray = "anxian";System.out.println(stringArray);//使用空参构造String stringArray2 = new String();stringArray2="anxian";System.out.println(stringArray2);//使用字符数组创建char [] stringArray3 = {'a','b','c'};String stringArray4 = new String(stringArray3);System.out.println(stringArray4);//使用字节数组创建byte [] stringArray5 = {97,98,99};String stringarray6 =new String(stringArray5);System.out.println(stringarray6);

运行结果:

2.常量池

Java基本类型和引用类型的区别_java基本类型和引用类型区别-CSDN博客

3 .字符串的比较

(这种情况不受构造方法的影响)

(常量尽量写在前面,以免出现null值报错)

1 equals
public class an2{public static void main(String[] args){String Str = "anxian";String Str2="anxian1";System.out.println(Str.equals(Str2));​

运行结果:

2 equalsIgnorecase

(这种方法忽略大小写)

import java.util.*;
public class an2{public static void main(String[] args){Scanner input = new Scanner(System.in);String axStr = input.nextLine();String Str = "anxian";System.out.println(axStr.equalsIgnoreCase(Str));

运行结果:

3.字符串长度:

import java.util.*;
public class an2{public static void main(String[] args){Scanner input = new Scanner(System.in);String axStr = input.nextLine();int axLength = axStr.length();System.out.println(axLength);

运行结果:

4.拼接字符串

import java.util.*;
public class an2{public static void main(String[] args){Scanner input = new Scanner(System.in);String axStr = input.nextLine();String axStr2 = axStr.concat(" World");System.out.println(axStr2);

运行结果:

5.获取单个字符:

可选择指定索引(下标)位置。

import java.util.*;
public class an2{public static void main(String[] args){Scanner input = new Scanner(System.in);String axStr = input.nextLine();char axChar = axStr.charAt(2);System.out.println(axChar);

运行结果:

6.子字符串的索引(首个)

import java.util.*;
public class an2{public static void main(String[] args){Scanner input = new Scanner(System.in);String axStr = input.nextLine();int numAX = axStr.indexOf("an");System.out.println(numAX);

运行结果:

7.截取字符串

import java.util.*;
public class an2{public static void main(String[] args){Scanner input = new Scanner(System.in);String axStr = input.nextLine();String ax = axStr.substring(2);//截取2:-1String axXian = axStr.substring(1,3);//截取1:3System.out.println(ax+" "+axXian);

运行结果:

8.将String的转换为数组:

字符char数组

字节byte数组

public class an4 {public static void main(String[] args){String aXian = "Hello World";char [] charaXian = aXian.toCharArray();byte [] byteaXian = aXian.getBytes();for (char ch : charaXian){System.out.print(ch+" ");}System.out.println();for (byte b : byteaXian){System.out.print(b+" ");}}
}

运行结果:

9.replace用法

public class an4 {public static void main(String[] args){String aXian = "Hello World My friends";String language = "会不会玩,你个大傻逼";String MaXian = aXian.replace(" ","|");String Mlanguage =language.replace("傻逼","**");System.out.println(MaXian);System.out.println(Mlanguage);}
}

运行结果:

10.split()用法

split()的参数实际上是一个正则表达式

public class an4 {public static void main(String[] args) {String aXian = "Hello World My friends";String[] ax = aXian.split(" ");//String数组for (String i :ax){System.out.print(i+"\t");}}
}

运行结果:

11.String的具体练习:

输入一个字符串然后统计这个字符串中大写小写数字以及其他出现的次数。

import java.util.*;
public class an5 {public static void main(String[] args) {Scanner input = new Scanner(System.in);String axStr = input.nextLine();char [] axChar = axStr.toCharArray();int aStr = 0;int AStr = 0;int IStr = 0;int OStr = 0;for (int i = 0; i < axChar.length; i++) {char ch = axChar[i];if (ch >= 'A' &&  ch <= 'Z') {AStr += 1;}else if (ch >= 'a' &&  ch <= 'z') {aStr += 1;}else if (ch >= '0' &&  ch <= '9') {IStr += 1;}else{OStr += 1;}}System.out.println("大写"+AStr);System.out.println("小写"+aStr);System.out.println("数字"+IStr);System.out.println("其他"+OStr);}
}

运行结果:

2.Arrays类

java.util.Arrays;是一个与数组相关的工具类,里面提供了大量的静态方法,用来实现数组常见操作,

1.将数组变成字符串

将参数数组变成字符串,按照默认格式【元素1,元素2,元素3~~~】

import java.util.Arrays;
public class an6 {public static void main(String[] args) {int[] axInt = {1,2,3,4};String axStr = Arrays.toString(axInt);System.out.println(axStr);}
}

运行结果:

2.sort 升序排序

import java.util.Arrays;
public class an6 {public static void main(String[] args) {int[] axInt = {1,2,3,4,8,5,7,99,88,77,55,444,3333};Arrays.sort(axInt);String axStr = Arrays.toString(axInt);System.out.println(axStr);}
}

运行结果:

3.Math类

java.util.math;里面有大量的静态方法,完成与数学相关的方法。

1.abs绝对值

public class an7 {public static void main(String[] args) {int axNum = -23;int axNUM = Math.abs(axNum);System.out.println(axNUM + " " + axNum);}
}

运行结果:

2.ceil向上取整

public class an7 {public static void main(String[] args) {double axNum = -23.2;double ayNum = 23.2;double axNUM = Math.ceil(axNum);double ayNUM = Math.ceil(ayNum);System.out.println(axNUM + " " + axNum);System.out.println(ayNUM + " " + ayNum);}
}

运行结果:

3.floor向下取整

public class an7 {public static void main(String[] args) {double axNum = -23.2;double ayNum = 23.2;double axNUM = Math.floor(axNum);double ayNUM = Math.floor(ayNum);System.out.println(axNUM + " " + axNum);System.out.println(ayNUM + " " + ayNum);}
}

运行结果:

4.round四舍五入

public class an7 {public static void main(String[] args) {double axNum = 23.5;double ayNum = 23.2;double axNUM = Math.round(axNum);double ayNUM = Math.round(ayNum);System.out.println(axNUM + " " + axNum);System.out.println(ayNUM + " " + ayNum);}
}

运行结果:

5.max/min最大最小

        int aum=10;int bum = 100;int Maxum = Math.max(aum,bum);int Minum = Math.min(aum,bum);System.out.println(Maxum+"\n"+Minum);

执行结果:

4.Scanner类

  1.导入包:

java.util包中的Scanner

import java.util.Scanner;

2.创建对象:eg:myObj

Scanner 变量名 = new Scanner(System.in);

如下:创建一个myObj 对象。

Scanner myObj = new Scanner(System.in);

3.调用对象:

基本数据类型 标识符 = 变量名.next基本数据类型();

eg1.传入应该byte类型的参数---anxian1

import java.util.Scanner;public class an3 {public static void main(String[] args) {System.out.println("输入应该数字:");Scanner myObj = new Scanner(System.in);//传入byte数据类型类型----anXian1byte anXian1 = myObj.nextByte();System.out.println("anXian1    \n" + anXian1);}
}

完整代码如下:

import java.util.Scanner;public class an3 {public static void main(String[] args) {System.out.println("输入应该数字:");Scanner myObj = new Scanner(System.in);byte anXian1 = myObj.nextByte();short anXian2 = myObj.nextShort();int anXian3 = myObj.nextInt();long anXian4 = myObj.nextLong();float anXian5 = myObj.nextFloat();double anXian6 = myObj.nextDouble();String anXian7 = myObj.next();System.out.println("anXian1\t" + anXian1 +"\t"+ "anXian2\t"+ anXian2+"\t"+"anXian3\t" + anXian3+"\t"+"anXian4\t" + anXian4+"\t"+"anXian5\t"+ anXian5+"\t"+"anXian6\t" + anXian6+"\t"+"anXian7\t" + anXian7);}
}

执行结果:

补充:

5.Random类

含参/不含参

import java.util.Random;public class ax1 {public static void main(String[] args){Random rand = new Random();int x = rand.nextInt(100);//范围0-99int y = rand.nextInt();//范围-21亿-21左右}
}

猜数字游戏

import java.util.Random;
import java.util.Scanner;public class an1{public static void main(String[] args){//经典-猜数字游戏System.out.println("输入一个数字");Random rand = new Random();int num =rand.nextInt(5);Scanner input = new Scanner(System.in);for (int i = 1; i <= 5; i++){int nums = input.nextInt();if (nums == num){System.out.println("猜对了");break;}else if (i!=5)continue;elseSystem.out.println("游戏结束");}}}

6 ArrayList类

数组的长度不可发生改变

但是ArraryList集合的长度可以发生改变

对于ArrayList 有一个<E>这个里面放的东西只能是引用数据类型(String,Integer,Short....),不能是基本数据类型(byte,short,char,int,long,float,double,boolean)

包装类与String

        ArrayList<Integer> list1 = new ArrayList<>();ArrayList<Short> list2 = new ArrayList<>();ArrayList<Byte> list3 = new ArrayList<>();ArrayList<Character> list4 = new ArrayList<>();ArrayList<Long> list5 = new ArrayList<>();ArrayList<Float> list6 = new ArrayList<>();ArrayList<Double> list7 = new ArrayList<>();ArrayList<Boolean> list8 = new ArrayList<>();ArrayList<String> list9 = new ArrayList<>();

1 创建对象list

ArrayList <String> list = new ArrayList<>();

2 添加add

//添加
list.add("A");
list.add("B");
list.add("C");

3 删除remove

//删除
list.remove(1);

4 输出

//输出
list.forEach(System.out::println);
System.out.println(list);

5 长度size

//长度
int len = list.size();

6 提取get

//提取
String aa = list.get(1);

7 排序sort

import java.util.ArrayList;
public class ax4 {public static void main(String[] args) {ArrayList<Integer> list = new ArrayList<>();list.add(11);list.add(21);list.add(13);list.add(41);list.forEach(System.out::println);System.out.println(list);list.sort(Integer::compareTo);System.out.println(list);}
}

执行结果:

8 倒序输出

使用collections

Collections.sort(list, Collections.reverseOrder());

9 更改元素

第一个空是索引,第二个是要改成的元素。

list.set(2,6);

10 将一个数组变成一个ArrayList类创建的对象

11 截取部分元素

ArrayList<Integer> list2 = new ArrayList<>(list.subList(0,2));System.out.println(list2);

7 StringBuffer类与String类结合使用

具体的方法

构造方法

  • StringBuffer():构造一个没有字符的字符串缓冲区,初始容量为16字符;
  • StringBuffer(String str):构造一个初始化为指定内容的字符串缓冲区;
  • StringBuffer(int capacity):构造一个没有字符的字符串缓冲区和指定的初始容量;

1 使用StringBuffer创建对象

StringBuffer ist = new StringBuffer();

2 append添加

ist.append(1);
ist.append(2);
ist.append(3);
ist.append(44);
ist.append(4);
ist.append(51);
ist.append(6);

3 delete删除

ist.delete(0,4);//删除索引区间左闭右开
ist.deleteCharAt(ist.length()-1);//删除某个字符_索引位置

4 reverse倒置

ist.reverse();//倒置

5 charAt提取字符

char c = ist.charAt(1);//提取字符_索引位置

6 replace区间字符替换

ist.replace(0,1,"*");//某个区间内的字符进行替换

7 substring提取字符串

String s = ist.substring(1,4);
String  s_ = ist.substring(2);//提取字符串如果单个索引是将末索引省去(2--1)

8 insert插入字符串

ist.insert(2,"an");//索引位置插入字符串

9 toString 变成字符串

String str = ist.toString();

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/415264.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

设计模式 -- 迭代器模式(Iterator Pattern)

1 问题引出 编写程序展示一个学校院系结构&#xff1a;需求是这样&#xff0c;要在一个页面中展示出学校的院系组成&#xff0c;一个学校有多个学院&#xff0c; 一个学院有多个系 传统方式实现 将学院看做是学校的子类&#xff0c;系是学院的子类&#xff0c;这样实际上是站在…

服务器数据恢复—如何应对双循环RAID5阵列的数据丢失问题?

服务器存储数据恢复环境&#xff1a; 一台存储中有一组由7块硬盘组建的RAID5阵列&#xff0c;存储中还有另外3块盘是raid中掉线的硬盘&#xff08;硬盘掉线了&#xff0c;管理员只是添加一块的新的硬盘做rebuild&#xff0c;并没有将掉线的硬盘拔掉&#xff09;。整个RAID5阵列…

F12控制台输入警告?

信息如下&#xff1a; Warning: Don’t paste code into the DevTools Console that you don’t understand or haven’t reviewed yourself. This could allow attackers to steal your identity or take control of your computer. Please type ‘allow pasting’ below and …

Type-C接口诱骗取电快充方案

Type-C XSP08Q 快充协议芯片是一种新型电源管理芯片&#xff0c;主要负责控制充电电流和电压等相关参数&#xff0c;从而实现快速充电功能。Type-C XSP08Q快充协议是在Type-C接口基础上&#xff0c;加入了XSP08Q协议芯片的支持&#xff0c;很大程度上提升了充电速度。 正常情况…

css实现卡片右上角的状态

1、成品展示 2、html部分 <div class"itemBox"><div class"status">{{ statusList[item.status] }}</div> </div> 3、css部分 .itemBox {position: relative;overflow: hidden; } .status {height: 25px;line-height: 25px;bac…

【实战教程】用 Next.js 和 shadcn-ui 打造现代博客平台

你是否梦想过拥有一个独特、现代化的个人博客平台&#xff1f;今天&#xff0c;我们将一起动手&#xff0c;使用 Next.js 和 shadcn-ui 来创建一个功能丰富、外观精美的博客系统。无论你是刚接触 Web 开发&#xff0c;还是经验丰富的程序员&#xff0c;这个教程都将带你step by…

Linux网络编程 --- Socket编程

前言 首先看看TCP/IP网络协议和在我们计算机系统层次中的对应关系。 socket的位置 网络通信的本质就是贯穿网络协议层的过程。 局域网数据的封装和解包过程 逻辑上我们认为同层协议之间通信 几乎任何层的协议都会提供一种解包和分用的功能。 几乎任何层的协议&#xff…

FPGA实现SDI视频H265压缩网络推流输出,基于VCU架构,支持12G-SDI 4K60帧,提供工程源码和技术支持

目录 1、前言工程概述免责声明 2、相关方案推荐我这里已有的视频图像编解码方案本博已有的 SDI 编解码方案 3、详细设计方案设计框图FPGA开发板视频输入SDI硬件均衡器LMH1219UHD-SDI GT SDI视频解串SMPTE UHD-SDI RX SUBSYSTEM SDI视频解码Video Frame Buffer WriteZynq UltraS…

Apollo Planning模块中的Hybird A*算法

文章目录 流程图OpenSpacePlanner算法与周边模块关系OpenSpacePlanner与PublicRoadPlanner关系Hybird A*流程Hybird A*外部调用入口Hybird A*内部流程 Hybird A*代码逻辑主函数Plan碰撞检测ReedsShepp曲线加速搜索扩展相邻的节点计算节点的代价路径后处理路径分割轨迹平滑&…

android AccessibilityService合法合规增加小红书曝光阅读量(2024-09-02)

免责任声明: 任何可操作性的内容与本人无关,文章内容仅供参考学习&#xff0c;如有侵权损害贵公司利益&#xff0c;请联系作者&#xff0c;会立刻马上进行删除。 一、分析 目前可增加曝光阅读流量渠道入口&#xff08;完成&#xff09; 1. 发现页 打开小红书app选择顶部发现页&…

【网络世界】网络层

目录 &#x1f308;前言&#x1f308; &#x1f4c1; 网络层 &#x1f4c1; IPV4 &#x1f4c2; 什么是IP地址 &#x1f4c2; 网段划分 &#x1f4c2; 特殊IP &#x1f4c2; 内网和公网 &#x1f4c2; IPV4的危机 &#x1f4c1; IP协议格式 &#x1f4c1; 路由 &#x1f…

VSCode+Keil协同开发之Keil Assistant

VSCodeKeil协同开发之Keil Assistant 目录 VSCodeKeil协同开发之Keil Assistant1. 效果展示2. Keil Assistant简介3. Keil Assistant功能特性4. 部署步骤4.1. 部署准备4.2. 安装Keil Assistant插件4.3. 配置Keil Assistant插件 5. Keil Assistant使用6. 总结 大家在单片机开发时…

密码学基础

一、理论知识 科尔霍夫原则 1、对于一个密码学系统&#xff0c;应当仅有密钥是保密的&#xff0c;其余算法和一切参数都应该是公开的 2、并不一定要数学上完全不可破解&#xff0c;只要在现实中不可能破解即可 对称加密 加密解密都使用相同的密钥 非对称加密 1、加密解密…

【iOS】通过第三方库Masonry实现自动布局

目录 前言 约束 添加约束的规则 使用Masonry自动布局 Masonry的常见使用方法 补充 前言 在暑期完成项目时&#xff0c;经常要花很多时间在调试各种控件的位置上&#xff0c;因为每一个控件的位置都需要手动去计算&#xff0c;在遇到循环布局的控件时&#xff0c;还需要设…

【安当产品应用案例100集】014-使用安当TDE实现达梦数据库实例文件的透明加密存储

随着数据安全重要性的不断提升&#xff0c;数据库文件的落盘加密已成为数据保护的一项基本要求。达梦数据库作为一款高性能的国产数据库管理系统&#xff0c;为用户提供了一种高效、安全的数据存储解决方案。本文将详细介绍如何利用安当KSP密钥管理平台及TDE透明加密组件来实现…

OpenAI即将推出自然语音功能

&#x1f989; AI新闻 &#x1f680; OpenAI即将推出自然语音功能 摘要&#xff1a;测试博客testingcatalog揭示OpenAI正在通过逆向工程ChatGPT应用&#xff0c;计划增加更自然的语音朗读功能。未来可能推出8种新语音&#xff0c;具有独特代号&#xff0c;能表达动物叫声等非…

【kafka】在Linux系统中部署配置Kafka的详细用法教程分享

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全…

华为云征文|部署电影收藏管理器 Radarr

华为云征文&#xff5c;部署电影收藏管理器 Radarr 一、Flexus云服务器X实例介绍1.1 云服务器介绍1.2 应用场景1.3 性能模式 二、Flexus云服务器X实例配置2.1 重置密码2.2 服务器连接2.3 安全组配置 三、部署 Radarr3.1 Radarr 介绍3.2 Docker 环境搭建3.3 Radarr 部署3.4 Rada…

Django 第十三课 -- Form 组件

Django Form 组件用于对页面进行初始化&#xff0c;生成 HTML 标签&#xff0c;此外还可以对用户提交的数据进行校验&#xff08;显示错误信息&#xff09;。 报错信息显示顺序&#xff1a; 先显示字段属性中的错误信息&#xff0c;然后再显示局部钩子的错误信息。若显示了字…

如何打造高校实验室预约系统?Java SpringBoot助力高效管理,MySQL存储数据,Vue前端展现,四步实现学生轻松预约!

&#x1f34a;作者&#xff1a;计算机毕设匠心工作室 &#x1f34a;简介&#xff1a;毕业后就一直专业从事计算机软件程序开发&#xff0c;至今也有8年工作经验。擅长Java、Python、微信小程序、安卓、大数据、PHP、.NET|C#、Golang等。 擅长&#xff1a;按照需求定制化开发项目…