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开发人员不用手工编写代理类,只要简单地指定一组接口及委托类对象,便能动态地获得代理类.代理类会负责将所有的方法调用分派到委托对象上反射执行,在分 ...
随机推荐
- mongo请求超时
no_cursor_timeout=True参数的使用 实例: import pymongo handler = pymongo.MongoClient().db.col with handler.f ...
- CSS样式命名
CSS样式命名 说明网页公共命名#wrapper 页面外围控制整体布局宽度#container或#content 容器,用于最外层#layout 布局#head, #heade ...
- Linux进程间通信-eventfd
Linux进程间通信-eventfd eventfd是linux 2.6.22后系统提供的一个轻量级的进程间通信的系统调用,eventfd通过一个进程间共享的64位计数器完成进程间通信,这个计数器由在 ...
- 2016 Multi-University Training Contest 1 T3
题目要求出所有合法点对间的最短路径的平均值,因此我们应当求出所有合法最短点对的最 短路径之和,再除以合法点对个数. 题目中Guard之间有着很不自然的制约关系,每个Guard的周围和同行.列都不能有其 ...
- python的进制转换
转载于:https://www.cnblogs.com/FWF1944/p/11132409.html(方法论190404) Python整数能够以十六进制,八进制和二进制来编写,作为一般以10位基数 ...
- Centos 非root用户安装rabbitmq
RabbitMQ是一个开源消息队列服务器,您可以使用它来构建您的消息传递应用程序.简单地说,您可以将来自一个应用程序的消息放入队列,并从来自相同应用程序或不同应用程序的队列中检索消息.您可以使用多种编 ...
- spring官方demo及配置查看
1.http://spring.io/projects/spring-framework 2.https://github.com/spring-projects/spring-mvc-showcas ...
- 【分布式锁】06-Zookeeper实现分布式锁:可重入锁源码分析
前言 前面已经讲解了Redis的客户端Redission是怎么实现分布式锁的,大多都深入到源码级别. 在分布式系统中,常见的分布式锁实现方案还有Zookeeper,接下来会深入研究Zookeeper是 ...
- HDFS数据加密空间--Encryption zone
前言 之前写了许多关于数据迁移的文章,也衍生的介绍了很多HDFS中相关的工具和特性,比如DistCp,ViewFileSystem等等.但是今天本文所要讲的主题转移到了另外一个领域数据安全.数据安全一 ...
- spring-boot-plus-v2.0发布了-让天下没有难写的代码
spring-boot-plus是易于使用,快速,高效,功能丰富,开源的spring boot脚手架 前后端分离,专注于后端服务 目标 每个人都可以独立.快速.高效地开发项目! GITHUB | GI ...