javaseq
⑴ 用java实现循环队列
简单写了下,希望你能看明白
import java.util.ArrayList;
public class SeqQueue {
ArrayList<String> list;
public SeqQueue() {
list = new ArrayList<String>();
}
public String getFirst() {
if (!list.isEmpty()) {
String s = list.get(0);
list.remove(0);
return s;
}
return null;
}
public void insertLast(String s) {
list.add(s);
}
public static void main(String[] args) {
SeqQueue seq = new SeqQueue();
seq.insertLast("111");
seq.insertLast("222");
seq.insertLast("333");
System.out.println(seq.getFirst());
System.out.println(seq.getFirst());
System.out.println(seq.getFirst());
}
}
⑵ java ackseq = 1什么意思
这个是socket编程里面的吧,
如果我没记错的话坦兄应该是http三次握手请求里面的请裂信手求返回参数肆嫌
ackseq=1表示连接成功,0表示不成功,
⑶ Scala中的Seq和List之间的区别
Scala的Seq将是Java的List,Scala的List将是Java的LinkedList。
请注意,Seq是一个trait,它相当于Java的接口,但相当于即将到来的防御者方法。 Scala的List是一个抽象类,由Nil和::扩展,这是List的具体实现。
所以,在Java的List是一个接口,Scala的List是一个实现。
除此之外,Scala的List是不可变的,这不是LinkedList的渗闹情况。事实上,Java没有等价的不可变集合(只读的东西只保证新的对象不能改变,但你仍然可以改变旧的,因此,“只读”一个)。
Scala的List是由编译器和库高度优化的,它是函数式编程中的基本数据类型。然而,它有限制,它不足以并行编程。这些天,Vector是一个比List更好的选择,但习惯是很难打破。
Seq是一个很好的泛化序列,游和所以如果你编程到接口,你应该使用它。注意,实际上有三个:collection.Seq,collection.mutable.Seq和collection.immutable.Seq,它是后一个是“默认”导入到范围。
还有GenSeq和ParSeq。后面的方法在可能的情况下并行运行,前者是Seq和ParSeq的父代,这丛磨罩是当代码的并行性无关紧要的合适的泛化。它们都是相对新引入的,因此人们不会使用它们。
⑷ java怎么取orcle中的自增序列
很衡衫多方法,下面是一种
//公共代码:得到数据库连接
publicConnectiongetConnection()throwsException{
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
Connectionconn=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:dbname","username","password");
returnconn;
}
//先用selectseq_t1.nextval模宴asidfromal取到新的sequence值。
//然后将最新的咐码腔值通过变量传递给插入的语句:insertintot1(id)values(?)
//最后返回开始取到的sequence值。
//这种方法的优点代码简单直观,使用的人也最多,缺点是需要两次sql交互,性能不佳。
()throwsException{
Connectionconn=getConnection();
Stringvsql="selectseq_t1.nextvalasidfromal";
PreparedStatementpstmt=(PreparedStatement)conn.prepareStatement(vsql);
ResultSetrs=pstmt.executeQuery();
rs.next();
intid=rs.getInt(1);
rs.close();
pstmt.close();
vsql="insertintot1(id)values(?)";
pstmt=(PreparedStatement)conn.prepareStatement(vsql);
pstmt.setInt(1,id);
pstmt.executeUpdate();
System.out.print("id:"+id);
returnid;
}
⑸ 用java程序为一列字符串编写对应序号,相同的字符串序号相同
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashMap;
public class A {
public static void main(String[] args){
int seq=0;
HashMap<String,Integer> hm=new HashMap<谨掘String,Integer>();
FileInputStream fi = null;
BufferedReader br = null;
try {
fi=new FileInputStream(new File("D:/a.txt"));
br=new BufferedReader(new InputStreamReader(fi));
String s="";
while((s=br.readLine())!=null){
if(hm.get(s)==null){
hm.put(s, ++seq);
System.out.printf("%-20s%d\n",s,seq);
}else{
System.out.printf("颤猜%-20s%d\n", s,hm.get(s));
}
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
/茄晌型/ TODO Auto-generated catch block
e.printStackTrace();
}finally{
try {
br.close();
fi.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
⑹ 如何用Java给Sequence 赋值
Java创建旦册对象并赋值,示例如下
Interger i = new Interger(1);
String s = “已经被创建了";
创建对象可以指定构造函数里面的初始化变量,也可以像string对桥晌象一样,直接用双引号生成对象,并且是不可以敏迟锋改变的。
⑺ 自定义序号,未使用回收java
自定义序号,未歼改使用回收java用seq。seq——基冲咐于mysql+spring-jdbc的自增序号氏判判生成器用于生成全局自增序号,跳过的序号能回收使用。
⑻ java如何生成12位永远不重复的数字
Calendar calendar = Calendar.getInstance();
System.out.println("现在:"+calendar.getTime().getTime());
calendar.add(Calendar.YEAR, 10);
System.out.println("10年后:"+calendar.getTime().getTime());
时间戳高并发还是会有重复的,你应该每获取一次加1的方法生成。用锁对象或者把方法声明为synchronized保证并发也不会重复。如果有用数据库,也可以用数据库提供的sequence来帮你生成。
(8)javaseq扩展阅读:
当编辑并运行一个Java程序时,需要同时涉及到这四种方面。使用文字编辑软件(例如记事本、写字板、UltraEdit等)或集成开发环境(Eclipse、MyEclipse等)在Java源文件中定义不同的类;
通过调用类(这些类实现了Java API)中的方法来访问资源系统,把源文件编译生成一种二进制中间码,存储在class文件中,然后再通过运行与操作系统平台环境相对应的Java虚拟机来运行class文件,执行编译产生的字节码,调用class文件中实现的方法来满足程序的Java API调用。