「java运用buffer」java运用范围
本篇文章给大家谈谈java运用buffer,以及java运用范围对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、java中StringBuffer类的常用方法怎么用?
- 2、JAVA多线程buffer
- 3、java中bufferreader的使用方法
- 4、java中StringBuffer类的常用方法有有哪些
java中StringBuffer类的常用方法怎么用?
1234567StringBuffer sb = new StringBuffer("Hello ");sb.append("world"); //在sb尾部追加一个字符串, 此时变成 Hello world;sb.charAt(1) ; //返回下标为1的字符 此处是 esb.insert(1,"d"); //在 1 处插入新的字符串 d 此时变为 Hedllo world;sb.reverse(); //反转字符 此时变成 dlrow olldeHsb.delete(1,2); //删除字符串 此时变为Hllo worldsb.replace(3,4,"new"); //替换字符串 从 3开始到4结束 此时变为 Hllnewworld
全是手打的,望采纳
JAVA多线程buffer
package com.wormwood.thread;
import java.util.LinkedList;
public class BufferLock //加互斥?的???
{
private LinkedListInteger stack = new LinkedListInteger();
public synchronized void put(int i) //同步方法
{
stack.push(new Integer(i)); //?value空?,value?得值
}
public synchronized int get() //同步方法
{
int value = 0;
if(!stack.isEmpty())
{
value = stack.removeFirst().intValue();
}
return value;
}
public static void main (String args[])
{
BufferLock buffer = new BufferLock();
(new Pproduced(buffer)).start();
(new Aprocessed(buffer)).start();
}
}
class Pproduced extends Thread //?送?程?
{
private BufferLock buffer;
public Pproduced(BufferLock buffer)
{
this.buffer = buffer;
}
public void run( )
{
for (int i=1;i20;i++)
{
buffer.put( i );
System.out.println("P produced : " + i );
}
}
}
class Aprocessed extends Thread //接收?程?
{
private BufferLock buffer;
public Aprocessed(BufferLock buffer)
{
this.buffer = buffer ;
}
public void run()
{
for (int i=1; i20;i++)
System.out.println("\t\t\t A processed : " + buffer.get()) ;
}
}
运行情况:
P produced : 1
P produced : 2
P produced : 3
P produced : 4
P produced : 5
P produced : 6
A processed : 1
A processed : 7
A processed : 6
P produced : 7
A processed : 5
P produced : 8
A processed : 8
P produced : 9
A processed : 9
P produced : 10
P produced : 11
P produced : 12
A processed : 10
P produced : 13
A processed : 13
P produced : 14
A processed : 14
P produced : 15
A processed : 15
P produced : 16
A processed : 16
P produced : 17
A processed : 17
P produced : 18
A processed : 18
P produced : 19
A processed : 19
A processed : 12
A processed : 11
A processed : 4
A processed : 3
A processed : 2
分析:这锁好像没什么用[ A processed : 7]还没有生产出来就消费了,
也试过:List list = Collections.synchronizedList(new LinkedList(...));
也有出现还没有生产出来就消费了....
楼主的程序哪个
private int value; //共享?量
private boolean isEmpty = true; //value是否?空的信?量
看意思是哪样,一般不会这样用的......
道理很简单:生产出来个的商品不可能只放在一个变量里,应该是集合
继续研究中.....同步的这个东东...确实不好测试...
有用就给分.....谢谢楼主提出问题.....
java中bufferreader的使用方法
java中bufferreader的类主要的功能接收用户从控制端输入的数值,示例如下:
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws Exception {
String str;
int a;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
//读取一行字符串
str = br.readLine();
//将字符转化为整型
a = Integer.parseInt(str);
System.out.println(a);
}
}
java中StringBuffer类的常用方法有有哪些
StingBuffer类常用的一些方法有:
append( ),表示将括号里的某种数据类型的变量插入某一序列中
charAt( ),返回此序列中指定索引处的 char 值
toString( ),返回此序列中数据的字符串表示形式。
subString( ), 返回一个新的 String,它包含此序列当前所包含的字符子序列。
delete( ),移除此序列的子字符串中的字符。
deletecharAt (), 移除此序列指定位置的 char。
insert( ),表示将括号里的某种数据类型的变量插入某一序列中
reverse( ),将此字符序列用其反转形式取代
setCharAt(int index, char ch ),将给定索引处的字符设置为 ch。
trimToSize (),尝试减少用于字符序列的存储空间。
StringBufferappend(boolean b)
将 boolean 参数的字符串表示形式追加到序列。 StringBufferappend(char c)
将 char 参数的字符串表示形式追加到此序列。 StringBufferappend(char[] str)
将 char 数组参数的字符串表示形式追加到此序列。 StringBufferappend(char[] str, int offset, int len)
将 char 数组参数的子数组的字符串表示形式追加到此序列。 StringBufferappend(CharSequence s)
将指定的 CharSequence 追加到该序列。 StringBufferappend(CharSequence s, int start, int end)
将指定 CharSequence 的子序列追加到此序列。 StringBufferappend(double d)
将 double 参数的字符串表示形式追加到此序列。 StringBufferappend(float f)
将 float 参数的字符串表示形式追加到此序列。 StringBufferappend(int i)
将 int 参数的字符串表示形式追加到此序列。 StringBufferappend(long lng)
将 long 参数的字符串表示形式追加到此序列。 StringBufferappend(Object obj)
追加 Object 参数的字符串表示形式。 StringBufferappend(String str)
将指定的字符串追加到此字符序列。 StringBufferappend(StringBuffer sb)
将指定的 StringBuffer 追加到此序列中。 StringBufferappendCodePoint(int codePoint)
将 codePoint 参数的字符串表示形式追加到此序列。 intcapacity()
返回当前容量。 charcharAt(int index)
返回此序列中指定索引处的 char 值。 intcodePointAt(int index)
返回指定索引处的字符(统一代码点)。 intcodePointBefore(int index)
返回指定索引前的字符(统一代码点)。 intcodePointCount(int beginIndex, int endIndex)
返回此序列指定文本范围内的统一代码点。 StringBufferdelete(int start, int end)
移除此序列的子字符串中的字符。 StringBufferdeleteCharAt(int index)
移除此序列指定位置的 char。 voidensureCapacity(int minimumCapacity)
确保容量至少等于指定的最小值。 voidgetChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
将字符从此序列复制到目标字符数组 dst。 intindexOf(String str)
返回第一次出现的指定子字符串在该字符串中的索引。 intindexOf(String str, int fromIndex)
从指定的索引处开始,返回第一次出现的指定子字符串在该字符串中的索引。 StringBufferinsert(int offset, boolean b)
将 boolean 参数的字符串表示形式插入此序列中。 StringBufferinsert(int offset, char c)
将 char 参数的字符串表示形式插入此序列中。 StringBufferinsert(int offset, char[] str)
将 char 数组参数的字符串表示形式插入此序列中。 StringBufferinsert(int index, char[] str, int offset, int len)
将数组参数 str 的子数组的字符串表示形式插入此序列中。 StringBufferinsert(int dstOffset, CharSequence s)
将指定 CharSequence 插入此序列中。 StringBufferinsert(int dstOffset, CharSequence s, int start, int end)
将指定 CharSequence 的子序列插入此序列中。 StringBufferinsert(int offset, double d)
将 double 参数的字符串表示形式插入此序列中。 StringBufferinsert(int offset, float f)
将 float 参数的字符串表示形式插入此序列中。 StringBufferinsert(int offset, int i)
将 int 参数的字符串表示形式插入此序列中。 StringBufferinsert(int offset, long l)
将 long 参数的字符串表示形式插入此序列中。 StringBufferinsert(int offset, Object obj)
将 Object 参数的字符串表示形式插入此字符序列中。 StringBufferinsert(int offset, String str)
将字符串插入此字符序列中。 intlastIndexOf(String str)
返回最右边出现的指定子字符串在此字符串中的索引。 intlastIndexOf(String str, int fromIndex)
返回最后一次出现的指定子字符串在此字符串中的索引。 intlength()
返回长度(字符数)。 intoffsetByCodePoints(int index, int codePointOffset)
返回此序列中的一个索引,该索引是从给定 index 偏移 codePointOffset 个代码点后得到的。 StringBufferreplace(int start, int end, String str)
使用给定 String 中的字符替换此序列的子字符串中的字符。 StringBufferreverse()
将此字符序列用其反转形式取代。 voidsetCharAt(int index, char ch)
将给定索引处的字符设置为 ch。 voidsetLength(int newLength)
设置字符序列的长度。 CharSequencesubSequence(int start, int end)
返回一个新的字符序列,该字符序列是此序列的子序列。 Stringsubstring(int start)
返回一个新的 String,它包含此字符序列当前所包含的字符子序列。 Stringsubstring(int start, int end)
返回一个新的 String,它包含此序列当前所包含的字符子序列。 StringtoString()
返回此序列中数据的字符串表示形式。 voidtrimToSize()
尝试减少用于字符序列的存储空间。
关于java运用buffer和java运用范围的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-11-30,除非注明,否则均为
原创文章,转载请注明出处。