很多朋友对于c compareto的用法和compare to与compare with的区别不太懂,今天就由小编来为大家分享,希望可以帮助到大家,下面一起来看看吧!
一、java中的string用法
java中的string用法,可以到java api查找方法的使用方式:
publicstaticvoidmethod_Zhuanhuan_Qukong_Bijiao()
//打印结果是:(hello和java前后门都有空格)hellojava
//打印结果是:(HELLO和JAVA前后门都有空格)HELLOJAVA
//打印及结果是:不带空格的“hellojava”
//比较数的大写,打印结果是:1,因为b对应ascii值是98,
//打印结果是:cdef,从指定位置开始到结尾。如果角标不存在,会出现字符串角标越界。
//打印结果是:cd,包含头,不包含尾。
publicstaticvoidmethod_split()
Strings="zhangsan,lisi,wangwu";
for(intx=0;x<arr.length;x++)
publicstaticvoidmethod_replace()
//Strings1=s.replace('a','n');
//Strings1=s.replace('w','n');如果要替换的字符不存在,返回的还是原串
Strings1=s.replace("java","world");//打印结果是:helloworld
sop("s="+s);//打印结果是:hellojava因为字符串一旦被初始化,值就不可被改变
sop("s1="+s1);//打印结果是:hellojnvn
publicstaticvoidmethod_trans()
char[]arr={'a','b','c','d','e','f'};
for(intx=0;x<chs.length;x++)
sop("ch="+chs[x]);//打印结果是:ch=z,x,c,v,b,n,m
//判断文件名称是否是Array单词开头
//判断文件名称是否是.java的文件
//sop(str.charAt(40));当访问到字符串中不存在的角标时会发生StringIndexOutOfBoundsException(字符串角标越界异常)
//sop(str.indexOf('a'));
sop(str.indexOf('a',3));//打印的是5,因为角标3是d,
//所以从d后面开始找a,第5个角标是a
//sop(str.indexOf('t',3))打印:-1,如果没有找到角标,返回-1
//反向索引一个字符出现的位置(从右往左查找,但是角标还是从左开始)
publicstaticvoidmain(String[]args)
method_Zhuanhuan_Qukong_Bijiao();
publicstaticvoidsop(Objectobj)
二、HashSet和TreeSet的用法
==========================他们的区别===========================
1. HashSet是通过HashMap实现的,TreeSet是通过TreeMap实现的,只不过Set用的只是Map的key
2. Map的key和Set都有一个共同的特性就是集合的唯一性.TreeMap更是多了一个排序的功能.
3. hashCode和equal()是HashMap用的,因为无需排序所以只需要关注定位和唯一性即可.
a. hashCode是用来计算hash值的,hash值是用来确定hash表索引的.
b. hash表中的一个索引处存放的是一张链表,所以还要通过equal方法循环比较链上的每一个对象
才可以真正定位到键值对应的Entry.
c. put时,如果hash表中没定位到,就在链表前加一个Entry,如果定位到了,则更换Entry中的value,并返回旧value
4.由于TreeMap需要排序,所以需要一个Comparator为键值进行大小比较.当然也是用Comparator定位的.
a. Comparator可以在创建TreeMap时指定
b.如果创建时没有确定,那么就会使用key.compareTo()方法,这就要求key必须实现Comparable接口.
c. TreeMap是使用Tree数据结构实现的,所以使用compare接口就可以完成定位了.
=====================================他们的用法======================
//java中Set的使用(不允许有重复的对象):
public static void main(String[] args)
HashSet hashSet=new HashSet();
System.out.println(hashSet.size());
String cz=hashSet.add(c)?"此对象不存在":"已经存在";
System.out.println("测试是否可以添加对象"+cz);
System.out.println(hashSet.isEmpty());
//测试其中是否已经包含某个对象
System.out.println(hashSet.contains("A"));
Iterator ir=hashSet.iterator();
System.out.println(ir.next());
System.out.println(hashSet.remove("a"));
System.out.println(hashSet.remove("A"));
//经过测试,如果你想再次使用ir变量,必须重新更新以下
System.out.println(ir.next());
*通过这个程序,还可以测试树集的添加元素的无序性与输出的有序性
public static void main(String[] args)
Iterator iter= tree.iterator();
System.out.println(iter.next());
以上就是他们的区别和用法,重在理解,多用,祝你成功
三、C# 的 CompareTo 怎么用
String.CompareTo方法将此实例与指定的对象或String进行比较版,二者相对值的指示。
if(s.CompareTo("upload")!= 1)就是将S与upload相比较,如果相同则返回假,如果不同则返回真。
CompareTo这是字符串比较的函数,用法:
当s1>s2时,s1.CompareTo(s2)==1
当s1=s2时,s1.CompareTo(s2)==0
当s1<s2时,s1.CompareTo(s2)==-1
public int compareTo(IntegeranotherInteger)在数字上比较两个Integer对象。
anotherInteger-要比较的 Integer。
返回值:如果该 Integer等于 Integer参数,则返回 0值;如果该 Integer在数字上小于 Integer参数,则返回值-1;如果 Integer在数字上大于 Integer参数,则返回整数1。
参考资料来源:百度百科-compareTo
四、IsDirectory( )的用法
java中的isDirectory()是检查一个对象是否是文件夹。返回值是boolean类型的。如果是则返回true,否则返回false。
调用方法为:对象.isDirectory()无需指定参数。
其实这些东西你要会查jdk api才好。那上面什么都有。好好利用。
另外这里有个相关的例子,关于文件操作的,你可以参考参考:
* Created by IntelliJ IDEA.<br>
*<b>User</b>: leizhimin<br>
*<b>Date</b>: 2008-7-18 22:43:44<br>
*<b>Note</b>:文件排序,按照先目录后文件方式排
public class FileComparator implements Comparator<File>{
public int compare(File o1, File o2){
if(o1.isDirectory()&& o2.isDirectory()) return o1.compareTo(o2);
else if(o1.isDirectory()&&!o2.isDirectory()) return-1;
else if(!o1.isDirectory()&& o2.isDirectory()) return 1;
else return o1.compareTo(o2);
import java.text.SimpleDateFormat;
import java.text.NumberFormat;
* Created by IntelliJ IDEA.<br>
*<b>User</b>: leizhimin<br>
*<b>Date</b>: 2008-7-18 22:02:30<br>
*<b>Note</b>:模拟dir测试的例程
public static DateFormat df= new SimpleDateFormat("yyyy-MM-dd HH:mm");
public static void main(String args[]){
System.out.println("----------test()----------");
File file= new File("F:\\SOFT_DEV");
// System.out.println(File.pathSeparator);
// System.out.println(File.pathSeparatorChar);
// System.out.println(File.separator);
// System.out.println(File.separatorChar);
FileComparator fc= new FileComparator();
Arrays.sort(lf, fc);//数组排序
String dataStr= df.format(new Date(f.lastModified()));
System.out.print(dataStr+"<DIR>");
System.out.print(dataStr+""+工程
getFormatString(String.valueOf
System.out.println(""+ f.getName());
public static String getFormatString(String s){
StringBuilder sb= new StringBuilder();
for(int n= 1; n<= nb; n++){
return sb.append(s).toString();
五、c[i].compareTo(c[j])表示什么意思
c[i].compareTo(c[j])表示在Java语言中比较c[i]对象和c[j]对象的大小,一般用于数组排序,
其中的对象可以是Byte,Double,Integer,Float,Long或Short六个基本数据类的对象,
也可以是其它类(这个类实现了Comparable接口并重写了compareTo方法)的对象.
如果对象c[i]与对象c[j]相等则返回0.
如果对象c[i]小于对象c[j]则返回-1.
如果对象c[i]大于对象c[j]则返回 1.
如果数组c的元素是字符串用compareTo比较则与上面不同,
1当两个比较的字符串是英文且长度不等时
(1)长度短的与长度长的字符一样,则返回的结果是两个长度相减的值.
(2)长度不一样且前几个字符也不一样,从第一位开始找,当找到不一样的字符时,则返回的值是这两个字符比较的值.
2当两个比较的字符串是英文且长度相等时
(1)每个字符串有一个字符时,返回的值是这两个字符比较的值.
(2)每个字符串有多个字符时,返回的值是这两个字符串中第一个不同字符的比较的值.
OK,关于c compareto的用法和compare to与compare with的区别的内容到此结束了,希望对大家有所帮助。