我想找到两个字符串的最长公共前缀.有没有办法循环我的最后几个if语句,以便我可以结束彼此不匹配的最后几个字符?
System.out.println("Enter the first string: ");
String s = input.nextLine();
System.out.println("Enter the second string: ");
String s2 = input.nextLine();
//check if first characters are same
if (s.charAt(0) != s2.charAt(0)) {
System.out.println(""+s+ " and "+s2+ " have no common prefix");
System.exit(0);
}
if (s.charAt(0) == s2.charAt(0))
System.out.print(" "+s.charAt(0));
if (s.charAt(0) == s2.charAt(0))
System.out.print(" "+s.charAt(1));
if (s.charAt(0) == s2.charAt(0))
System.out.print(" "+s.charAt(2));
}
}
Run Code Online (Sandbox Code Playgroud)
例:
Enter first string: Welcome to c++
Enter second string: Welcome to java
Run Code Online (Sandbox Code Playgroud)
代码应将Welcome作为公共前缀返回.
对于这个项目,我有一些标签必须在它们下面显示一些东西,我正在使用视图寻呼机,但由于某种原因,片段布局没有显示在屏幕上。我得到一个空白屏幕,但没有错误或任何东西。我一直在谷歌搜索并搜索了几个小时,甚至开始了一个新项目,只是为了确保它不是构建错误,但仍然没有找到解决我的问题的方法。我已经做了很多次这样的例子并使用了完全相同的步骤,但由于某种原因,这次它不起作用。任何帮助将不胜感激
这是我的 mainActivity 类
public class MainActivity extends ActionBarActivity {
Toolbar toolbar;
ViewPager myViewPager;
SlidingTabLayout mySlidingTabs;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
myViewPager = (ViewPager) findViewById(R.id.viewPager);
myViewPager.setAdapter(new MyPagerAdapter(getSupportFragmentManager(), this));
mySlidingTabs = (SlidingTabLayout) findViewById(R.id.sliding_tabs);
mySlidingTabs.setViewPager(myViewPager);
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的自定义适配器类
public class MyPagerAdapter extends FragmentPagerAdapter {
private Context context;
private String[] tabNames = {"Beverages", "Deli & Bakery", "Fresh Produce", "Health & Beauty", "Meat & Seafood", "Natural Foods", "Pet Care"};
public MyPagerAdapter(FragmentManager fm, Context context) {
super(fm); …Run Code Online (Sandbox Code Playgroud)