从字符串中删除动态字符

时间:2017-12-26 07:15:58

标签: java android string char

我有一个字符串,其中包含用 package com.example.anonymous.note_taking_app; import android.app.ActionBar; import android.app.FragmentManager; import android.app.FragmentTransaction; import android.content.Context; import android.net.Uri; import android.os.Bundle; import android.app.Fragment; import android.support.design.widget.FloatingActionButton; import android.support.v7.app.AppCompatActivity; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.EditText; public class AddingFragment extends Fragment { public AddingFragment() { } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_adding, container, false); return view; } @Override public void onResume() { super.onResume(); FloatingActionButton floating = (FloatingActionButton) getActivity().findViewById(R.id.addingfloatingbutton); floating.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Log.i("floating_button", "floating button 2 clicked"); EditText title = (EditText) getActivity().findViewById(R.id.firsttextview); EditText detial = (EditText) getActivity().findViewById(R.id.secondtextview); DatabaseHelper db = new DatabaseHelper(getActivity().getApplication()); boolean insert = db.insert(title.getText()+"",detial.getText()+""); if(insert==true) { com.example.anonymous.note_taking_app.ListAdapter l = new com.example.anonymous.note_taking_app.ListAdapter(); ListFragment.it.add(new ListItem(title.getText()+"",detial.getText()+"")); l.notifyItemInserted(ListFragment.it.size()-1);//DataSetChanged(); l.notifyDataSetChanged(); for(int i=0;i<ListFragment.it.size();i++) { Log.i("List item"+i+"", ListFragment.it.get(i).getNoteTitle()); } Log.i("insertion", "is added"); } else { Log.i("insertion", "is not added"); } } }); FloatingActionButton floatings = (FloatingActionButton) getActivity().findViewById(R.id.addcancelfloatingbutton); floatings.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { final FragmentManager fragmentManager = getFragmentManager(); fragmentManager.popBackStackImmediate(); } }); } } // package com.example.anonymous.note_taking_app; import android.content.Context; import android.os.Bundle; import android.support.v4.app.FragmentActivity; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentTransaction; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.RecyclerView; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.Button; import android.widget.ImageButton; import android.widget.TextView; import android.widget.Toast; import android.app.Fragment; import java.util.ArrayList; /** * Created by Anonymous on 12/13/2017. */ public class ListAdapter extends RecyclerView.Adapter<ListAdapter.holderclas> implements EditDilogue.EditDilougeinterface { static ArrayList<ListItem> i; Context context; View view; ImageButton share; ImageButton edit; static int lastposition; android.app.FragmentManager fm; public ListAdapter(ArrayList<ListItem> i,android.app.FragmentManager fm) { this.i=i; this.fm=fm; } public ListAdapter() { } @Override public ListAdapter.holderclas onCreateViewHolder(ViewGroup parent, int viewType) { view= LayoutInflater.from(parent.getContext()).inflate(R.layout.list_item,parent,false); holderclas h = new holderclas(view); share = (ImageButton) view.findViewById(R.id.share); edit = (ImageButton) view.findViewById(R.id.edit); return h; } @Override public void onBindViewHolder(ListAdapter.holderclas holder, final int position) { final int y= position; lastposition = position; final ListItem it = i.get(position); holder.title.setText(it.getNoteTitle()); holder.details.setText(it.getNoteDetail()); ImageButton b =(ImageButton) view.findViewById(R.id.delete); b.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Log.i("size", i.size()+""); i.remove(y); notifyDataSetChanged(); } }); share.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Log.i("share", "share"); } }); edit.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Log.i("edit", i.size()+"edit"); EditDilogue ed = new EditDilogue(); Bundle args = new Bundle(); args.putString("title", it.getNoteTitle()); args.putString("detail", it.getNoteDetail()); ed.setArguments(args); ed.setTargetFragment(new ListFragment(),1); ed.show(fm,"fragment"); } }); } @Override public int getItemCount() { return i.size(); } @Override public void deleteandadd(String titlestring, String detailstring) { String oldtitle = i.get(lastposition).getNoteTitle(); String olddetail = i.get(lastposition).getNoteDetail(); Log.i("string", titlestring); Log.i("string", detailstring); } public class holderclas extends RecyclerView.ViewHolder { TextView title; TextView details; public holderclas(View itemView) { super(itemView); title=(TextView) itemView.findViewById(R.id.title); details=(TextView) itemView.findViewById(R.id.detail); } } } // package com.example.anonymous.note_taking_app; import android.app.Fragment; import android.app.FragmentManager; import android.app.FragmentTransaction; import android.os.Bundle; import android.support.design.widget.FloatingActionButton; import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.RecyclerView; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.EditText; import android.widget.ImageButton; import android.widget.ListAdapter; import java.util.ArrayList; /** * Created by Anonymous on 12/13/2017. */ public class ListFragment extends Fragment implements EditDilogue.EditDilougeinterface { RecyclerView recyClerView; RecyclerView.Adapter adapter; RecyclerView.LayoutManager layoutManager; public static ArrayList<ListItem> it; public View onCreateView(LayoutInflater inflater, ViewGroup parent, Bundle savedInstanceState) { it = new ArrayList<>(); View view = inflater.inflate(R.layout.fragment_list, parent, false); FloatingActionButton floating = (FloatingActionButton) view.findViewById(R.id.listfloatingbutton); floating.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Fragment frg = new AddingFragment(); FragmentManager manager = getFragmentManager(); FragmentTransaction trans = manager.beginTransaction(); trans.replace(R.id.placeholder,frg); trans.addToBackStack("addingfragment"); trans.commit(); AddingFragment()).addToBackStack("addingfragment").commit(); } }); for(int i=0;i<5;i++) { ListItem t = new ListItem("Time Bank", "Bank should contain atleast $2000 rupees then i will leave this matter") ; it.add(t); } recyClerView=(RecyclerView) view.findViewById(R.id.recycle); FragmentManager fm = getFragmentManager(); com.example.anonymous.note_taking_app.ListAdapter l = new com.example.anonymous.note_taking_app.ListAdapter(it,fm); recyClerView.setAdapter(l); layoutManager = new LinearLayoutManager(getActivity()); recyClerView.setLayoutManager(layoutManager); return view; } @Override public void onResume() { super.onResume(); if(adapter!=null) { adapter.notifyDataSetChanged(); adapter.notifyItemInserted(ListFragment.it.size()-1); } } @Override public void deleteandadd(String titlestring, String detailstring) { String oldtitle = com.example.anonymous.note_taking_app.ListAdapter.i.get(com.example.anonymous.note_taking_app.ListAdapter.lastposition).getNoteTitle(); String olddetail = com.example.anonymous.note_taking_app.ListAdapter.i.get(com.example.anonymous.note_taking_app.ListAdapter.lastposition).getNoteDetail(); Log.i("string", titlestring); Log.i("string", detailstring); } } 分隔的数字。我想删除第一个字符前的,

输入为,,此代码无效:

,1,2,3,4,5,6,7,8,9,10

4 个答案:

答案 0 :(得分:7)

字符串在Java中是不可变的。在字符串上调用方法不会修改字符串本身,而是返回一个新字符串

为了捕获这个新字符串,您需要将操作结果分配回变量:

results = results.replaceFirst(",", "");

答案 1 :(得分:0)

试试这个

String str = ",1,2,3,4,5,6,7,8,9,10";
if(Objects.nonNull(str) && str.startsWith(",")){
  str = str.substring(1, str.length());
}

它将删除第一个位置的,

答案 2 :(得分:0)

你也可以这样做..

String str = ",1,2,3,4,5,6,7,8,9,10";
String stre = str.replaceFirst("^,", "");
Log.e("abd",stre);

答案 3 :(得分:0)

试试这个

String str = ",1,2,3,4,5,6,7,8,9,10";
str = str .startsWith(",") ? str .substring(1) : str ;
System.out.println("output"+str);  // 1,2,3,4,5,6,7,8,9,10