黑马程序员_集合4(高级for,可变参数,静态导入,Date,Calendar,Math,System,RunTime)
来源:互联网 发布:淘宝diy动铁耳机 编辑:程序博客网 时间:2024/05/17 07:04
--------- android培训、java培训、期待与您交流!---------
一.高级For循环
1.格式:
for(数据类型 变量名 :被遍历的集合(Collection)或者数姐)
{
}
2.高级for对集合进行遍历。
只能获取集合元素,但是不能对集合进行操作。
迭代器除了遍历,还可以进行remove集合中元素的动作。
3.传统for循环和高级for循环有什么区别呢?
高级for有一个局限性,必须有被遍历的目标。
建议在遍历数组的时候,还是用传统for循环,因为传统for循环可以定义角标。
4.示例:
ArrayList<String> al = new ArrayList<String>();
al.add("abc1");
al.add("abc2");
al.add("abc3");
for (String s : al)
{
s ="kk";
System.out.println(s);
}
二 可变参数
1.JDK1.5版本出现的新特性。
方法的可变参数:
在使用时注意:可变参数一定要定义在参数列表的最后面。
2.代码演示:
class ParamMethodDemo
{
public static void main(String[] args)
{
//show(3,4);
/*
//虽然少定义了多个方法。但是每次都要定义一个数组,作为实际参数。
int[] arr = {3,4};
show(arr);
int[] arr1 = {2,3,4,5};
show(arr1);
*/
/*
可变参数
其实就是上一种数组参数的简写形式。
不用每一次都手动的建立数组对象。
只要将要操作的元素作为参数传递即可。
隐式将这些参数封装成了数组。
*/
show("haha",2,3,4,5,6);
//show(2,3,4,5,6);
//show(2,5,3,5,56,76,43,2,3,);
//show();
}
public static void show(int... arr)
{
System.out.println(arr.length);
}
public static void show(String str,int... arr)
{
System.out.println(arr.length);
}
}
三静态导入
StaticImport 静态导入当类名重名时,需要指定具体的包名。
当方法重名时,要指定具体所属的对象或者类。
import static java.util.Arrays.*;//导入的是Arrays这个类中的所有静态成员。
import static java.lang.System.*;//导入了System类中所有静态成员。
四 System类
1.System(java.lang):
System:类中的方法和属性都是静态的。
out: 标准输出,默认是控制台。
in : 标准输入,默认是键盘。
该类中的方法:
1)static Properties getProperties()
确定当前的系统属性。
2)static String getProperty(String key)
获取指定键指示的系统属性。
3)static String getProperty(String key, String def)
获取用指定键描述的系统属性。
2.Properties(java.util)类:
extends Hashtable<Object,Object>
Properties 类表示了一个持久的属性集。Properties 可保存在流中或从流中加载。
属性列表中每个键及其对应值都是一个字符串。
该类中的方法:
1)String getProperty(String key)
用指定的键在此属性列表中搜索属性。
2)String getProperty(String key, String defaultValue)
用指定的键在属性列表中搜索属性。
3)Object setProperty(String key, String value)
调用 Hashtable 的方法 put 相似。
五Runtime类
1.Runtime(java.lang)对象
该类并没有提供构造函数。
说明不可以new对象,那么会直接想到该类中的方法都是静态的。
发现该类中还有非静态方法。
说明该类肯定会提供了方法获取本类对象,而且该方法是静态的,并且返回值类型是本类类型。
由这个特点可以看出该类使用了单例设计模式完成。
该方法是static Runtime getRuntime();
2.该类中方法:
1)getRuntime()
public static Runtime getRuntime()
返回与当前 Java 应用程序相关的运行时对象。Runtime 类的大多数方法是实例方法,
并且必须根据当前的运行时对象对其进行调用。
2 exec()
public Process exec(String command)
throws IOException在单独的进程中执行指定的字符串命令。
这是一个很有用的方法。对于 exec(command) 形式的调用而言,其行为与调用 exec(command, null, null) 完全相同。
3.Process进程类----destroy()方法
abstract void destroy() 杀掉子进程。
六.Date
1.Date类(java.util包中)
1).构造方法:
public Date()
分配 Date 对象并初始化此对象,以表示分配它的时间(精确到毫秒)。
2.DateFormat类(java.text包)
该类是个抽象类,其子类是SimpleDateFormat
1)SimpleDateFormat的构造方法:
SimpleDateFormat(String pattern)
用给定的模式和默认语言环境的日期格式符号构造 SimpleDateFormat。
2)日期和时间模式 结果
"yyyy.MM.dd G 'at' HH:mm:ss z" 2001.07.04 AD at 12:08:56 PDT
"EEE, MMM d, ''yy" Wed, Jul 4, '01
"h:mm a" 12:08 PM
"hh 'o''clock' a, zzzz" 12 o'clock PM, Pacific Daylight Time
"K:mm a, z" 0:08 PM, PDT
"yyyyy.MMMMM.dd GGG hh:mm aaa" 02001.July.04 AD 12:08 PM
"EEE, d MMM yyyy HH:mm:ss Z" Wed, 4 Jul 2001 12:08:56 -0700
"yyMMddHHmmssZ" 010704120856-0700
"yyyy-MM-dd'T'HH:mm:ss.SSSZ" 2001-07-04T12:08:56.235-0700
3)format()方法
public final String format(Date date)
将一个 Date 格式化为日期/时间字符串。
代码示例:
public static void main(String[] args) { Date d = new Date(); System.out.println(d);//打印的时间看不懂,希望有些格式。 //将模式封装到SimpleDateFormat对象中。 SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日E hh:mm:ss"); //调用format方法让模式格式化指定Date对象。 String time = sdf.format(d); System.out.println("time= "+ time); long l = System.currentTimeMillis(); Date d1 = new Date(l); System.out.println("d1:"+d1); }
七 Calendar类
1.Calendar抽象类(java.util)-----日历
Calendar 对象能够生成为特定语言和日历风格实现日期-时间格式化所需的所有日历字段值
1)Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等
日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。
瞬间可用毫秒值来表示,它是距历元(即格林威治标准时间 1970 年 1 月 1 日的 00:00:00.000,格里高利历)的偏移量
2)getInstance()方法:
与其他语言环境敏感类一样,Calendar 提供了一个类方法 getInstance,
以获得此类型的一个通用的对象。Calendar 的 getInstance 方法返回一个 Calendar 对象,
其日历字段已由当前日期和时间初始化:
Calendar rightNow = Calendar.getInstance();
3)get()方法:
public int get(int field)
返回给定日历字段的值
4)set()方法:
public final void set(int year,int month,int date)
设置日历字段 YEAR、MONTH 和 DAY_OF_MONTH 的值
5)add()方法:
public abstract void add(int field,int amount)
根据日历的规则,为给定的日历字段添加或减去指定的时间量。
例如,要从当前日历时间减去 5 天,可以通过调用以下方法做到这一点:
add(Calendar.DAY_OF_MONTH, -5)。
八 Math类和Random类
1.Math类(java.lang包中)//隐式导入类
1)ceil():
static double ceil(double a)
返回最小的(最接近负无穷大)double 值,该值大于等于参数,并等于某个整数。
2)floor():
static double floor(double a)
返回最大的(最接近正无穷大)double 值,该值小于等于参数,并等于某个整数。
3)round():
static long round(double a)
返回最接近参数的 long。
4)pow():
static double pow(double a, double b)
返回第一个参数的第二个参数次幂的值。
5)random():
static double random()
返回带正号的 double 值,该值大于等于 0.0 且小于 1.0。
2.Random类(java.util)
1)nextInt():
int nextInt()
返回下一个伪随机数,它是此随机数生成器的序列中均匀分布的 int 值。
代码:
Random r = new Random();
for (int x=0; x<10; x++)
{
//int d = (int)(Math.random()*10+1);//返回0.0到1.0之间(含0不含1)的随机数。
int d = r.netInt(10)+1;
sop(d);
}
- 黑马程序员_集合4(高级for,可变参数,静态导入,Date,Calendar,Math,System,RunTime)
- 黑马程序员_集合(高级for,可变参数,静态导入,Date,Calendar,Math,System,RunTime)
- 黑马程序员--------java Collections、Arrays、高级for、可变参数、静态导入、System、Runtime、Math、Date、Calendar
- 黑马程序员_集合3(HashMap,HashTable,TreeMap,Arrays,Collections,高级for,可变参数,静态导入,Date,Calendar,Math,System等)
- 黑马程序员_<<常用类(System.Math,Calendar,Date,Runtime)>>
- 黑马程序员--Java笔记11--静态类(Collections、Arrays、System、Runtime、Date、Calendar、Math)
- 黑马程序员---System,Math,Runtime,Date类/Calendar的使用
- 黑马程序员_JAVA- System、Runtime、Math、Date、Calendar
- 黑马程序员_Java 其它对象(System Runtime Date Calendar Math)
- 黑马程序员---Java基础(System,Runtime,Date,Calendar,Math类)
- 黑马程序员之System、Runtime、Math、Date、Calendar类
- 黑马程序员_高新技术一(高级for,静态导入,可变参数,自动装箱拆箱,枚举)
- 黑马程序员_高新技术1(高级for,静态导入,可变参数,自动装箱拆箱,枚举)
- 黑马程序员:高级for循环,可变参数,静态导入
- 黑马程序员_温习 集合六 (个人笔记)摘要(Collections集合工具类-----Arrays数组工具类-----高级for----可变参数----静态导入)
- 黑马程序员------集合(No.2)(Collections、Arrays、集合与数组转换、高级for、可变参数、静态导入)
- 黑马程序员--学习笔记(集合框架中的两个工具类,高级for循环,可变参数,静态导入)
- System、Runtime、Date、Calendar、Math
- maven 添加第三方jar
- PHP计划任务:如何使用Linux的Crontab执行PHP脚本
- Eclipse 中导入Android开源项目
- 一个BUG引发的思考
- mysql常用语句备忘
- 黑马程序员_集合4(高级for,可变参数,静态导入,Date,Calendar,Math,System,RunTime)
- MySQL Server 层和 InnoDB 引擎层 体系结构图
- JDK,JRE,JVM区别与联系
- libsvm 使用
- 我的学习生涯(Delphi篇) - 05
- 完数VS盈数
- 15个学习习惯,受益一生(强烈推荐)
- C语言string
- CreateFile