Java第四天,随机数如何生成?ArrayList如何使用?
虽然很多时候我们查阅Java API文档,但是对于一些必要的类,我们还是需要去了解的。因为这样的情况下,我们就可以尽量的去缩短开发的周期。接下来我们认识一下哪些API类是必须熟记的。
Random
这是一个随机数类,可以产生制定范围的随机数。具体使用方法如下 :
public class randomLearn {
public static void main(String[] args){
System.out.println(''您获得的随机数是'' + getRandom(100));
}
public static int getRandom(int scope){
Random r = new Random();
return r.nextInt(scope);
}
}
程序截图
本程序中我们只是示例使用了获取Int类型的随机数。也可以获取其他类型的。r.nextInt(x); 中的x是设定的取值范围,可以为空,如果为空的话,获取的就是int类型的范围。
2.ArrayList<E>
我们需要注意以下几点.
(1).Java中可以用数组存储对象,即对象数组,但是它是引用类型,本质就是存储的地址值,这点要切记。
(2).对象数组虽然可以用来存储对象,但是它定义好以后就不能扩充空间了。
(3).ArrayList的出现就是为了解决数组无法动态增加空间的这个问题。有点类似与C语言中数组和链表的区别。
(4).后面的 <E> 是泛型的意思。就是说这个ArrayList集合所存储的数据类型由<>中的内容制定。即 E 类型。
(5).泛型只能是引用类型,不能是基本类型。切记。
(6).除了ArrayList集合,其他集合的add添加动作不一定成功。所以需要判断。
(7).ArrayList如果想添加基本类型,可以使用基本类型对应的包装类(java就两种数据类型,一种是基本类型,一种是引用类型)。
(8).对于Arraylist,直接使用打印输出的是集合中存储的值,而并非地址值。
public class arrayListLearn {
public static void main(String[] args){
showInfoOne();
showInfoTwo();
}
public static void showInfoOne(){
person one = new person(20,''小李'');
person two = new person(21,''小理'');
person three = new person(22,''小丽'');
person[] crowd = new person[3];
crowd[0] = one;
crowd[1] = two;
crowd[2] = three;
for(int i = 0;i < 3;i++){
System.out.println(''第'' + (i + 1) + ''个学生是'' + crowd[i].getAge() + ''岁的'' + crowd[i].getName() + ''同学'');
}
}
public static void showInfoTwo(){
ArrayList<person> crowd = new ArrayList<>();
crowd.add(new person(50,''小王''));
crowd.add(new person(51,''小旺''));
crowd.add(new person(52,''小望''));
for (int i = 0; i < crowd.size(); i++) {
System.out.println(''姓名:'' + crowd.get(i).getName() + '',年龄:'' + crowd.get(i).getAge());
}
}
}
class person{
int age;
String name;
person(int age,String name){
this.age = age;
this.name = name;
}
int getAge(){
return this.age;
}
String getName(){
return this.name;
}
}
程序截图
3.String
注意:
(1)Java代码中的所有字符串类型都是String类的对象,即使没有用new。
(2)Java代码中,字符串(String)是常量,一旦定义则不可更改。
(3)Java中,字符串有四种创建方式,其中包括一种直接创建方式和三种构造创建方式。
(4).Java中,“==” 对于基本类型来说是数值的比较,而对于引用对象来说,它进行的是地址值的比较。
(5).双引号创建的字符串在常量池当中,但new的不在常量池当中。
(6) 基本类型、局部变量是存放于栈内存中的。
(7) new创建的实例化对象及数组,是存放于堆内存当中,用完之后靠垃圾回收机制不定期自动消除。
三种构造创建方式:
public String();
public String(char[] chars);
pubilc String(byte[] bytes);
代码:
public class stringLearn {
public static void main(String[] args) {
showInfoOne();
showInfoTwo();
showInfoThree();
}
public static void showInfoOne(){
String infoOne = new String();
System.out.println(''第一个字符串是 '' + infoOne);
}
public static void showInfoTwo(){
char[] charString = {'L','Y','Y'};
String infoTwo = new String(charString);
System.out.println(''第二个字符串是 '' + infoTwo);
}
public static void showInfoThree(){
byte[] byteString = {100,101,102};
String infoThree = new String(byteString);
System.out.println(''第三个字符串是 ''+ infoThree);
}d
}
构造方式创建字符串
一种直接创建方式:
String infoFour = ''the_fourth'';
Java第四天,随机数如何生成?ArrayList如何使用?的更多相关文章
- Java集合(四)--基于JDK1.8的ArrayList源码解读
public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess ...
- java基础基础总结----- 随机数(产生四个随机数)
前言:在开发的时候经常会遇见,一些验证码登录,其实这些东西,很简单.我曾经开发过一个验证码登录的页面,那时用的插件.但是作为一个合格的开发者,要了解其内部的核心知识,有些东西,可以不深入了解,但是要做 ...
- java随机数的生成
我们经常会用到随机数的生成,作为唯一性的id或者标识: long now = System.currentTimeMillis(); SimpleDateFormat dateFormat=new S ...
- java ssl https 连接详解 生成证书 tomcat keystone
java ssl https 连接详解 生成证书 我们先来了解一下什么理HTTPS 1. HTTPS概念 1)简介 HTTPS(全称:Hypertext Transfer Protocol over ...
- Java泛型四:Java泛型总结
原文地址https://www.cnblogs.com/lwbqqyumidi/p/3837629.html 一. 泛型概念的提出(为什么需要泛型)? 首先,我们看下下面这段简短的代码: 1 publ ...
- Java的四种内部类
Java的四种内部类包括如下: 成员内部类 静态内部类 局部内部类 匿名内部类 成员内部类: 定义在另一个类(外部类)的内部,而且与成员方法和属性平级叫成员内部类,......相当于外部类的非静态方法 ...
- 《Thinking In Java第四版》拾遗
<Thinking In Java第四版>拾遗 转自我的github(http://katsurakkkk.github.io/2016/05/Thinking-In-Java%E7%AC ...
- JAVA提高四:反射基本应用
在前面一节<http://www.cnblogs.com/pony1223/p/7659210.html>,我们学习了JAVA的反射的相关知识,那么本节我们对前面所学习的知识做一个应用相关 ...
- 百度地图和高德地图坐标系的互相转换 四种Sandcastle方法生成c#.net帮助类帮助文档 文档API生成神器SandCastle使用心得 ASP.NET Core
百度地图和高德地图坐标系的互相转换 GPS.谷歌.百度.高德坐标相互转换 一.在进行地图开发过程中,我们一般能接触到以下三种类型的地图坐标系: 1.WGS-84原始坐标系,一般用国际GPS纪录仪记 ...
- 深入分析Java反射(四)-动态代理
动态代理的简介 Java动态代理机制的出现,使得Java开发人员不用手工编写代理类,只要简单地指定一组接口及委托类对象,便能动态地获得代理类.代理类会负责将所有的方法调用分派到委托对象上反射执行,在分 ...
随机推荐
- 强大的Flutter App升级功能
注意:无特殊说明,Flutter版本及Dart版本如下: Flutter版本: 1.12.13+hotfix.5 Dart版本: 2.7.0 应用程序升级功能是App的基础功能之一,如果没有此功能会造 ...
- Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks
将 RCN 中下面 3 个独立模块整合在一起,减少计算量: CNN:提取图像特征 SVM:目标分类识别 Regression 模型:定位 不对每个候选区域独立通过 CN 提取特征,将整个图像通过 CN ...
- 通过shell脚本排查jar包中类冲突
当我们在线上运行项目时,依赖很多jar包,有时候某个类的全限定名,在多个包中出现,而某个包中的类的方法没有,而且在类加载时,刚好加载了这个类,可能会报找不到方法,或者找不到类的异常,这种情况就可能是类 ...
- C++ 人脸识别系统的浅理解
机器学习 机器学习的目的是把数据转换成信息. 机器学习通过从数据里提取规则或模式来把数据转成信息. 人脸识别 人脸识别通过级联分类器对特征的分级筛选来确定是否是人脸. 每个节点的正确识别率很高,但正确 ...
- 读书笔记——吴翰清《白帽子讲Web安全》
目录 第一篇 世界观安全 一 我的安全世界观 第二篇 客户端脚本安全 一 浏览器安全二 跨站脚本攻击(XSS)三 跨站点请求伪造(CSRF)四 点击劫持(ClickJacking)五 HTML5 安全 ...
- Python-操作XML文件
一.python对XML文件的操作 目录 1.xml 创建 2.xml 数据查询 3.xml 数据修改 4.xml 数据删除 二. 1.xml 创建 import xml.etree.ElementT ...
- LocalStorage与SessionStorage
localStorage与sessionStorage 每日更新前端基础,如果觉得不错,点个star吧
- 树莓派3B+安装&卸载mysql
需求 在树莓派上 安装Mysql 服务,并开启远程访问 步骤 安装 mysql server 1 $ sudo apt-get install mysql-server 我以为中间会让我提示输入 数据 ...
- python使用matplotlib:subplot绘制多个子图 不规则画图
https://www.cnblogs.com/xiaoboge/p/9683056.html
- 使用Docsify做文档网站的详细配置教程
使用Docsify做文档网站的详细配置教程 作者:xhemj 没错,它叫Docsify. xhemj的文档中心就是用这个写的 开源地址:https://github.com/docsifyjs/doc ...