java学习-3
输入语句Scanner的使用方法
1.导包
import java.util.Scanner
2.创建
从键盘输入:Scanner sc = new Scanner(System.in);
3.使用
输入数字:int num = sc.nextInt();
输入字符:String str = sc.next();
匿名对象
即在创建对象的时候,没有左边的名字与赋值运算符。
new 类名称;
因为匿名对象只能使用唯一的一次,所以在使用对象时,如果确定对象只使用一次,则可以使用匿名对象,比如做为方法的参数与返回值时。
使用random类产生随机数值
Random c = new Random();
int x = c.nextInt(5);
System.out.println(x);
Arraylist集合
相比数组Arraylist集合的长度是可以随意改变的,对于Arraylist集合其后面有一个<E>表示泛型,即集合中所有元素的类型,只能是引用类型。
添加数据格式:名称.add(要添加的数据)
例:
ArrayList<String> list = new ArrayList<>();
list.add("啦啦啦");
System.out.println(list);
读取数据格式:名称.get(要读取的数据位置)
例:
ArrayList<String> list = new ArrayList<>();
list.add("啦啦啦");
list.add("哈哈哈");
list.add("乌拉拉");
System.out.println(list.get(1));
删除数据格式:名称.remove(要删除的数据位置)
例:
ArrayList<String> list = new ArrayList<>();
list.add("啦啦啦");
list.add("哈哈哈");
list.add("乌拉拉");
System.out.println(list);
list.remove(2);
System.out.println(list);
获取集合长度:名称.size()
例:
ArrayList<String> list = new ArrayList<>();
list.add("啦啦啦");
list.add("哈哈哈");
list.add("乌拉拉");
list.add("哎呀呀");
System.out.println(list);
System.out.println(list.size());
list.remove(2);
System.out.println(list);
System.out.println(list.size());
Arraylist集合如果要想储存基本数据类型,就必须使用基本对应的包装类
基本类型 包装类
int Integer
char Character
double Double
long Long
byet Byet
short Short
Arraylist集合作为方法的参数与返回值
public static ArrayList<Integer> name(ArrayList<Integer> list)
{
}
创建字符串的常见3+1种情况
三种构造方法:
空参构造 :
String str1 = new String;
System.out.println(str1);//会直接输出空白
根据字符数组创建字符串:
char[] shuz = {‘a’,’b’,’c’};
String str2 = new String(shuz);
System.out.println(str2);//会直接输出字符串abc
根据字节数组创建字符串:
Byte[] shuz = {97,98,99};
String str2 = new String(shuz);
System.out.println(str2);//会直接输出字符串abc
字符串内容比较
- equals。严格区分大小写。
- equalsIgnoreCase。不区分大小写。
例:
String str1 = "abc";
String str2 = "ABC";
System.out.println(str1.equals(str2));//输出false
System.out.println(str1.equalsIgnoreCase(str2));//输出true
字符串的常用方法
获取字符长度:
String ch = “helloworld”;
System.out.println(ch.lenght);//输出10
拼接两个字符串:
String ch1 = “hello”;
String ch2 = “world”;
System.out.println(ch1.concat(ch2));//输出helloworld
获取指定位置的字符:
String ch1 = "helloworld";
System.out.println(ch1.charAt(3));//输出l
查找字符串首次出现的位置,没有返回-1 :
String ch1 = "helloworld";
System.out.println(ch1.indexOf("llo"));//输出2
截取字符串:
①获取某一位置与其后面全部的字符:
String ch1 = "helloworld";
System.out.println(ch1.substring(5));//输出world
②获取某两个位置之间的字符,[位置1,位置2):
String ch1 = "helloworld";
System.out.println(ch1.substring(4,7));//输出owo
字符串的相关转换:
①转换成字符数组:
char[] ch = “helloworld”.toCharArray();
②转换成字节数组:
byte[] ch = “helloworld”.getBytes();
③字符内容的替换:
String ch1 = "how are you";
String ch2 = ch1.replace("you","me");
System.out.println(ch2);//输出how are me
字符串的分割:
String ch1 = "how are you";
String[] array = ch1.split(" ");
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]);
}
注意:如果是按英文符号“.”来分割,则split里面为(“\\.”)
static关键字
用静态static关键字修饰成员变量,表示该变量为所有对象共用,
用其修饰成员方法,则方法可以不用创建对象,直接使用。
静态变量:类名称.变量名
静态方法:类名称.方法名()
注意:静态方法中不能访问非静态的成员变量,也不能使用this关键字。
静态代码块
格式:
Public class 类名称 {
Static{
//静态代码块内容
}
}
静态代码块执行唯一一次,通常用途为对成员变量赋值
Arrays 的两个常用方法
- 将参数数组变为字符串
char[] arr = {'a','b','c'};
String str = Arrays.toString(arr);
System.out.println(str);//输出[a, b, c]
- 按照默认排序对数组进行排序
int[] arr1 = {2,3,6,1,3,95,3,13,51,7};
Arrays.sort(arr1);
System.out.println(Arrays.toString(arr1 ));//按顺序输出
Math类的常用方法
取绝对值:Math.abs(number);
向上取整:Math.ceil(number);
向下取整:Math.floor(number);
四舍五入:Math.round(number);
java学习-3的更多相关文章
- 0037 Java学习笔记-多线程-同步代码块、同步方法、同步锁
什么是同步 在上一篇0036 Java学习笔记-多线程-创建线程的三种方式示例代码中,实现Runnable创建多条线程,输出中的结果中会有错误,比如一张票卖了两次,有的票没卖的情况,因为线程对象被多条 ...
- 0035 Java学习笔记-注解
什么是注解 注解可以看作类的第6大要素(成员变量.构造器.方法.代码块.内部类) 注解有点像修饰符,可以修饰一些程序要素:类.接口.变量.方法.局部变量等等 注解要和对应的配套工具(APT:Annot ...
- 分享篇——我的Java学习路线
虽然之前我是开发出身,但是我学习的语言是Objective-c,这个语言使用起来范围比较窄,对于自动化学习来说也是无用武之地,所以我自己学习了Java,对于一个有开发经验的人来说学习一门新语言相对来说 ...
- Java学习笔记(04)
Java学习笔记(04) 如有不对或不足的地方,请给出建议,谢谢! 一.对象 面向对象的核心:找合适的对象做合适的事情 面向对象的编程思想:尽可能的用计算机语言来描述现实生活中的事物 面向对象:侧重于 ...
- Java学习心得之 HttpClient的GET和POST请求
作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Java学习心得之 HttpClient的GET和POST请求 1. 前言2. GET请求3 ...
- 0032 Java学习笔记-类加载机制-初步
JVM虚拟机 Java虚拟机有自己完善的硬件架构(处理器.堆栈.寄存器等)和指令系统 Java虚拟机是一种能运行Java bytecode的虚拟机 JVM并非专属于Java语言,只要生成的编译文件能匹 ...
- 0030 Java学习笔记-面向对象-垃圾回收、(强、软、弱、虚)引用
垃圾回收特点 垃圾:程序运行过程中,会为对象.数组等分配内存,运行过程中或结束后,这些对象可能就没用了,没有变量再指向它们,这时候,它们就成了垃圾,等着垃圾回收程序的回收再利用 Java的垃圾回收机制 ...
- 0028 Java学习笔记-面向对象-Lambda表达式
匿名内部类与Lambda表达式示例 下面代码来源于:0027 Java学习笔记-面向对象-(非静态.静态.局部.匿名)内部类 package testpack; public class Test1{ ...
- 0025 Java学习笔记-面向对象-final修饰符、不可变类
final关键字可以用于何处 修饰类:该类不可被继承 修饰变量:该变量一经初始化就不能被重新赋值,即使该值跟初始化的值相同或者指向同一个对象,也不可以 类变量: 实例变量: 形参: 注意可以修饰形参 ...
- 《Java学习笔记(第8版)》学习指导
<Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...
随机推荐
- gulp的作用,安装,使用
1.gulp是什么? Gulp是基于node的一个自动化构建工具,开发者可以使用它构建自动化工作流程(前端集成开发环境).例如:网页自动刷新,CSS预处理,代码检测,图片压缩等功能,只需要简单的 ...
- sql 同一行中,不同结果在不同列显示
对不同条件查询到的结果在同一行中展示 尝试写过使用","和inner join两种方式,感觉使用","的更加直观 select table1.guid, tab ...
- XML -- XML基础知识
1.XML的结构 XML的结构采用的是树结构,树结构就是一种一对多的关系结构. XML必定有一个根节点.因为,在解析这个XML时,需要有个起始位置进行遍历解析,这个跟节点就是起始位置. 2.XML的元 ...
- 51 Nod 1272 简单思维题
1272 最大距离 题目来源: Codility 基准时间限制:1 秒 空间限制:131072 KB 分值: 20 难度:3级算法题 收藏 关注 给出一个长度为N的整数数组A,对于每一个数组元素 ...
- 【CUDA 基础】4.1 内存模型概述
title: [CUDA 基础]4.1 内存模型概述 categories: - CUDA - Freshman tags: - CUDA内存模型 - CUDA内存层次结构 - 寄存器 - 共享内存 ...
- Suitable Replacement
D. Suitable Replacement 这个题统计出 s 和 t 中的各字母个数以及"?"的个数,直接暴力即可,s中不足的字母可用 "?"来替代 这个题 ...
- [CSP-S模拟测试]:Blue(贪心)
题目描述 $Blue$是个动物学家,不仅喜欢研究猫和老鼠,还喜欢研究青蛙.他最近开始研究青蛙过河的问题,可以简化成:数轴上$0$为岸边,$L$为河对岸.$(0,L)$中间存在$n$个石子.已知青蛙一跳 ...
- Java写入的常用技巧
一.批量写入 Java写入大量数据到磁盘/数据库等其它第三方介质时,由于IO是比较耗费资源的操作,通常采用攒一批然后批量写入的模式 //通常构造一个缓存池,一个限制指标,可以是内存大小也可以是时间 B ...
- Python 之类与对象及继承
类与对象 学习类的语法 关键字 class 类别,分类class 类名:属性特性特征类名的编写规范:首字母大写 驼峰命令 见名知意--->遵守规范.Math StudentInfoclass S ...
- android data binding jetpack V 实现recyclerview 绑定
android data binding jetpack VIII BindingConversion android data binding jetpack VII @BindingAdapter ...