精华内容
下载资源
问答
  • 操作包括字符串的初始化赋值和输出、两个字符串相加合成为一个新字符串、两个字符串比较其是否相同、已知一个字符串,查找某一子字符串是否被包含此字符串之,如果包含,包含了多少次。 字符串 1、创建字符串...

    完成一个java application应用程序,完成字符串的各种操作。操作包括字符串的初始化赋值和输出、两个字符串相加合成为一个新字符串、两个字符串比较其是否相同、已知一个字符串,查找某一子字符串是否被包含在此字符串之中,如果包含,包含了多少次。

    字符串

    1、创建字符串对象:
    char a[] = { ‘s’,‘t’,‘u’,‘d’,‘e’,‘n’,‘t’ };
    String s = new String(a);
    等价于:
    String s = new String(“student”);
    2、使用+运算符可以实现连接多个字符串的功能,并产生一个新的String对象。
    3、判断字符串是否相等:
    在字符串对象进行比较的时候不能简单的使用比较运算符“= =”,比较运算符比较的是两个字符串的地址是否相同。当两个两个字符串的内容相同的时候,两个对象的内存地址不同,使用比较运算符仍然会返回false。如:
    String t1 = new String(‘world’);
    String t2 = new String(‘world’);
    Boolean b = (t1==t2);
    这时候布尔类型的变量b的值就为false,因为字符串是对象,t1,t2是引用,所以如果两个字符串具有相同的字符和长度,则使用equals()方法来进行比较。这个方法是区分大小写的,若是相等则返回true,否则返回false。语法如下:
    boolean b = t1.equals(t2);

    程序代码

    
    import java.util.Scanner;//导入Scanner类用于键盘输入
    
    public class StringTest1 {
    	public static void main(String[] args) {
    		//开一个键盘录入信息的入口
    		Scanner sc=new Scanner(System.in);
    		System.out.print("请输入字符串1:");
    		String s1=sc.nextLine();//把键盘输入的字符串储存在变量s1中
    		
    		Scanner sc1=new Scanner(System.in);
    		System.out.print("请输入字符串2:");
    		String s2=sc1.nextLine();//把键盘输入的字符串储存在变量s2中
    		
    		String s3=new String("student");//创建字符串对象s3
    		String s=s1+" "+s2;//把两个字符串相加合成为一个新字符串
    		boolean b1=s1.equals(s3);//比较两个字符串是否相等
    		boolean b2=s2.equals(s3);//比较两个字符串是否相等
    		
    		System.out.println(s);//输出相加以后的新字符串
    		System.out.println("s1等于s3:"+b1);//输出
    		System.out.println("s2等于s3:"+b2);//输出
    		
    		//查找字符串
    		while(true){ //定义死循环
    			int count=0;//声明int类型的变量
    			//开一个键盘录入信息的入口
    			Scanner scan=new Scanner(System.in);
    			System.out.print("请输入需要查找的字符串:");
    			String s4=scan.next();//把键盘输入的字符串储存在变量s4中
    			char[] c=s.toCharArray();//将字符串转换为数组
    			char n=s4.charAt(0);//获取指定索引位置的字符
    			//for循环
    			for(int i=0;i<c.length;i++){
    				//if语句判断输入的字符串n是否存在于被查找的字符串中
    				if(n==c[i]){
    					count++;//如果输入字符串存在被查找字符串中,次数自加一
    				}
    			}
    			System.out.println("字符串"+n+"出现的次数为:"+count+"次");//输出出现的次数
    		}
    	}
    }
    

    运行结果

    运行之后就会把字符串s1与s2相加合并为一个新的字符串s,然后使用s1.equals(s3)与s1.equals(s3)来判断两个字符串是否相等,若是相等则会返回true,若是不相等则会返回false。使用键盘输入的形式来查找字符串在s中是否存在,若存在,则输出存在的次数。先要把字符串转换为数组的形式存储于c中,然后获取输入字符串n,在for循环中,使用n==c[i]判断输入字符串是否存在于被查找的字符串中,其中c[0]表示被查找字符串中的第一个元素。运行结果如下:

    在这里插入图片描述

    展开全文
  • 2000个元素(每个元素都是一个字符串).字符串长约50-100个字符,最多为c. 20个单词(这些集可能会变得更大).我想检查集合A成员是否也是集合B成员.现在我认为一个天真实现可以被视为一个矩阵,其中A和B中的成员...

    我正在使用Python(并且可以访问pandas,numpy,scipy).

    我有两组字符串设置A和设置B.每组A和B包含c. 2000个元素(每个元素都是一个字符串).字符串长约50-100个字符,最多为c. 20个单词(这些集可能会变得更大).

    我想检查集合A的成员是否也是集合B的成员.

    现在我认为一个天真的实现可以被视为一个矩阵,其中A和B中的成员相互比较(例如A1 == B1,A1 == B2,A1 == B3等等……)和布尔值来自比较的(0,1)包括矩阵的元素.

    有效实施此方法的最佳方法是什么?

    两个进一步的阐述:

    (i)我也在考虑对于较大的集合,我可以使用Bloom Filter(例如使用PyBloom,pybloomfilter)来散列每个字符串(即我不介意那么多……).这是一个好方法还是我应该考虑其他策略?

    (ii)我正在考虑在字符串之间包含Levenshtein距离匹配(我知道它可能很慢)因为我可能需要模糊匹配 – 有没有办法将它与(i)中的方法相结合或以其他方式使其更有效?

    在此先感谢您的帮助!

    解决方法:

    首先,2000 * 100字符不是那么大,你可以直接使用一套.

    其次,如果你的字符串是排序的,有一种快速的方法(我发现here)来比较它们,如下所示:

    def compare(E1, E2):

    i, j = 0, 0

    I, J = len(E1), len(E2)

    while i < I:

    if j >= J or E1[i] < E2[j]:

    print(E1[i], "is not in E2")

    i += 1

    elif E1[i] == E2[j]:

    print(E1[i], "is in E2")

    i, j = i + 1, j + 1

    else:

    j += 1

    它肯定比使用set慢,但它不需要将字符串保存到内存中(同时只需要两个字符串).

    对于Levenshtein来说,有一个C模块可以在Pypi上找到,而且速度非常快.

    标签:python,string,bloom-filter

    来源: https://codeday.me/bug/20190517/1122100.html

    展开全文
  • 此方法按字典顺序比较两个字符串比较是基于字符串每个字符Unicode值。字典上比较此String对象表示字符序列与自变量字符串表示字符序列。该方法返回如果当前String对象字典上参数字符串之前,则为负...

    compareTo()String类的方法。此方法按字典顺序比较两个字符串。比较是基于字符串中每个字符的Unicode值。在字典上比较此String对象表示的字符序列与自变量字符串表示的字符序列。该方法返回如果当前String对象在字典上在参数字符串之前,则为负整数。

    如果当前String对象在字典上遵循该参数,则为正整数。

    字符串相等时为true。

    示例import java.lang.*;

    public class StringDemo {

    public static void main(String[] args) {

    String str1 = "tutorials", str2 = "point";

    //比较str1和str2-

    int retval = str1.compareTo(str2);

    //打印比较的返回值

    if (retval 

    System.out.println("str1 is greater than str2");

    } else if (retval == 0) {

    System.out.println("str1 is equal to str2");

    } else {

    System.out.println("str1 is less than str2");

    }

    }

    }

    输出结果str1 is less than str2

    展开全文
  • 嗨,我正在努力做到这一点:我想比较两个字符串php计算他们分数.这意味着我有两个字符串:$字符串1 = “例1”;$字符串2 = “exumple22”;现在我想比较字符串是否相等 – 这种情况下它们不是.但另外我想看到...

    嗨,我正在努力做到这一点:

    我想比较两个字符串并在php中计算他们的分数.

    这意味着我有两个字符串:

    $字符串1 = “例1”;

    $字符串2 = “exumple22”;

    现在我想比较字符串是否相等 – 在这种情况下它们不是.

    但另外我想看到匹配的字符.至少算一算.

    在这种情况下,将是:6;

    我试过这个,但我卡住她的是我的榜样:

    enter code here

    include("connect.php");

    $query="SELECT * FROM data where ID = '1'";

    $result = mysql_query($query) or die(mysql_error());

    while($row = mysql_fetch_array($result))

    {

    //echo "Score :{$row['scoreA']}
    " ;

    $scoretemp=$row['scoreA'];

    $string1=$row['textA1'];

    $string2=$row['textA2'];

    }

    mysql_close();

    if (strcmp($string1, $string2) != 0){

    echo "not equal in a case-sensitive string comparison
    ";

    $j = strlen($string1);

    for ($i = 0; $i < $j; $i++) {

    $stringtemp1++;

    echo $string1[$i].', ';

    echo $stringtemp1;

    }

    $u = strlen($string2);

    for ($t = 0; $t < $u; $t++) {

    $stringtemp2++;

    echo $string2[$t].', ';

    echo $stringtemp2;

    }$scoreA=($stringtemp1 - $stringtemp2);

    $stringtemp1=0;$stringtemp2=0;

    }

    else{

    echo "Stringmatch!
    ";

    $e = strlen($string1);

    for ($r = 0; $r < $e; $r++) {

    $stringtemp1++;

    echo $string1[$r].', ';

    echo $stringtemp1;

    }$scoreA=$stringtemp1;

    $stringtemp1=0;

    }

    ?>

    展开全文
  • 为了比较两个数字字符串,让我们首先创建一个表。以下是查询-mysql>createtablecompareTwoStringsDemo->(->IdintNOTNULLAUTO_INCREMENTPRIMARYKEY,->Valuevarchar(100)->);以下是使用insert命令表...
  • 【参数】s1, s2 为需要比较的两个字符串。 字符串大小的比较是以ASCII 码表上的顺序来决定,此顺序亦为字符的值。strcmp()首先将s1 第一个字符值减去s2 第一个字符值,若差值为0 则再继续比较下个字符,若差值不为0 ...
  • 嗨,我正在努力做到这一点:我想比较两个字符串PHP计算他们分数.这意味着我有两个字符串:$字符串1 = “例1”;$字符串2 = “exumple22”;现在我想比较字符串是否相等 – 这种情况下它们不是.但另外我想看到...
  • 使用Java中的compareTo()方法比较两个字符串。语法如下-intcompareTo(Objecto)这里,o是要比较的对象。如果参数字典上等于该字符串,则返回值为0;否则,返回值为0。如果参数字典上大于此字符串,则该值小于0...
  • 我们Java程序经常使用字符串,所以比较两个字符串是Java的一种常见做法。本文,我尝试回答关于字符串的最常见问题,比如:“如何Java中比较字符串?”验证、排序、引用匹配等过程比较字符串非常有用...
  • compareTo方法是比较两个字符串的词典顺序也就是字典的顺序,比如“abcd”“acdb”前面另外你应该先把字符串转变成int,然后再比较可以用下面的方法比较两个整数public int max(int m,int n){if(m>...
  • 如同C#一样,XSLT我们也不能直接对两个字符串变量进行大小比较,查阅W3school有关XPath函数,可以使用compare()进行字符串大小比较,但是该函数只XSLT 2.0有效,XSLT 1.0不支持。通过添加ms前缀,使用ms...
  • java字符串比较,java字符串比较,java比较两个字java比较两个字符串相等,需要使用equals方法,若要不区分大小写需要使用equalsIgnoreCase方法,如下实例代码:/** * Main.java * * @author byrx.net ...
  • 一个关于python字符串的练习遇到了一些问题。我有两个不同的列表:list1= "ABCDEFABCDEF"以及^{pr2}$我需要根据它们的位置比较两个列表,所以1个字母一起,然后2…使用最小长度(这里是列表1的长度),并...
  • 一个关于python字符串的练习遇到了一些问题。我有两个不同的列表:list1= "ABCDEFABCDEF"以及^{pr2}$我需要根据它们的位置比较两个列表,所以1个字母一起,然后2…使用最小长度(这里是列表1的长度),并...
  • Java提供字符串两个选项进行比较。首先是==操作符,第二个是.equals() 为Java字符串函数进行比较。这个Java教程将帮助您了解Java==和.equals()Java字符串比较的字符...比较这两个简单字符串:如果这两个字符串...
  • stl取出字符串中的字符 字符串作为数据类型 (String as datatype) In C, we know string basically a character array terminated by \0. Thus to operate with the string we define character array. But in C++, ...
  • 比较MySQL中的两个数字字符串,请使用CAST()函数。语法如下select*fromyourTableNamewherecast(yourColumnNameassigned)=yourIntegerValue;为了理解上述语法,让我们创建一个表。创建表查询如下...
  • 时间1Fri Mar 27 15:25:24 NZDT 2015时间2Fri Mar 27 15:23:01 NZDT 2015上述两个时间戳之间,timestamp1以上时间晚于timestamp2。我如何python程序中比较这些时间戳,以便从JSON文件提取数百个...
  • 文章目录写开头比较两个字符串中最大相同字符串00. 说明和思路0.1 题目说明0.2 思路01. 最终结果写最后话: 这里是一段防爬虫文本,请读者忽略。 本文原创首发于CSDN,作者IDYS 博客首页:...
  • C比较两个字符串中的不同字符串

    千次阅读 2016-03-19 20:55:53
    字符串A和字符串B,假定s("I am a student"),t("am a"),那么程序输出结果为C("I","student"),也即t字符串是取自s中的一部分,将st中的单词输出出来。
  • 假设我们有两个字符串S和T,我们必须检查相同长度字符串是否字典上大于S且小于T。如果没有这样字符串,则必须返回-1。我们必须谨记,只要存在i,S = S1S2…Sn字典上就小于T = T1T2…Tn,因此S1 = T1,S2 = ...
  • python,判断两个变量是否相等或一样,可以...如果两个字符串末尾有其他符号,比如回车‘\n’,print时候无法发现,所以需要strip:a=a.strip()b=b.strip()if a==b:print "True"2.有时候==判断是 True ,...
  • 学习Excel技术,关注微信公众号:excelperfect导语:继续研究来自于excelxor.com本次的练习是:单元格A2给定一个字符串值,仅由大写字母组成且字符长度至少为2。单元格B2输入公式:如果A2中字符串的各个字符...
  • 是一个stackoverflow上问题。 给出两个长度相等字符串,找出这两个字符串中第一个不同字符位置。
  • java中比较两个字符串是否一致不能用双等号,只能调用stringequals方法, 引用数据类型不能用双等等号 package object中的方法; public class Test03 { public static void main(String[] args){ String ...
  • 刚才上网,看到这个问题好多论坛上得到很大的讨论,于是尝试练习了一下。...1.先判断两个字符串的长度是否相同 2. 判断相同长度的字符串的字符和相同字符的数量是否相同。 3. 判断字符时,先把字符

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,017
精华内容 2,806
关键字:

在两个字符串的比较中