在 Textview 来查看数据库

我想在 activity 中使用一个 Textview 来查看数据库。
setText()代码:

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_viewlogs); 
TextView tv = (TextView) findViewById(R.id.tvSqlinfo);
LogsDB info = new LogsDB(this);
info.open();
ArrayList<String> data = info.getData();
info.close();
tv.setText(data);
}

好像在 tv.setText(data);处获的错误:"The method setText(CharSequence) in the type TextView is not applicable for the arguments (ArrayList)"。然后当我建议修复时,tv.setText(data)就变成 tv.setText((CharSequence) data);
当我检测程序时,有错误显示它不能被cast。如何在 Textview 来查看数据库?

1个回答

0.0 你的data是个Arrylist,把它里面的数据遍历出来再settext();

ArrayList data = info.getData();
info.close();
String s = "";
//数据多的时候用线程遍历~
for(int i = 0; i<data.size(); i++){
s = s + data.get(i);
}
tv.setText(s);

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
一个Activity创建数据库,另一个Activity中调用数据库并用TextView显示
第一个Activity(创建数据库): Db db = new Db(this); SQLiteDatabase dbWrite = db.getReadableDatabase(); ContentValues cv = new ContentValues(); cv.put("name", "小张"); cv.put("sex", "男"); dbWrite.insert("user", null, cv); cv = new ContentValues(); cv.put("name", "小李"); cv.put("sex", "女"); dbWrite.insert("user", null, cv); dbWrite.close(); 第二个Activity(查看数据库内容): public class TryAnotherAty extends AppCompatActivity { private TextView tv = null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_try_another_aty); tv = (TextView) findViewById(R.id.tv); tv.setMovementMethod(ScrollingMovementMethod.getInstance()); SQLiteDatabase dbRead = openOrCreateDatabase("mytable", Context.MODE_PRIVATE,null); Cursor c = dbRead.query("user", null, null, null, null, null, null); while(c.moveToNext()){ tv.append(getString(c.getColumnIndex("name"))); tv.append(getString(c.getColumnIndex("sex"))); tv.append("\n"); } } Db.class: public class Db extends SQLiteOpenHelper { //必须要有构造函数 public Db(Context context) { super(context, "db", null, 1); } public void onCreate(SQLiteDatabase db) { db.execSQL("create table user( name TEXT,sex TEXT )"); } public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { } } PS:真机测试时跳到第二个Acitvity直接退出程序。
在TextView中删除链接的下划线
程序中有两个textview来显示数据库中的链接,我想改变链接的颜色,并且把链接下划线去掉。 email.setText(c.getString(5)); website.setText(c.getString(6)); Linkify.addLinks(email, Linkify.ALL); Linkify.addLinks(website, Linkify.ALL); 使用XML或代码如何实现呢?在我的代码中再添加什么函数?
android怎么把数据库哭显示出来的网址显示成超链接
做了一个textview 想把数据库里查询出来的网址显示成超链接 求详细点 新手 谢谢
android读取手机联系人并在textview中显示名字时中文乱码怎么解决?
android读取手机联系人并在textview中显示名字时中文乱码怎么解决?从数据库里来的中文的全变成"?"了,其他的正常。
在 textview 上的点击链接
程序中有text view,我想设置set-text作为一个链接,直接连到网站,但是不能点击。 Grades = (TextView) findViewById(R.id.textView9); Grades.setText(Html.fromHtml(course.getString(TAG_Grade))); Grades.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { WebView webView; webView.setWebViewClient(new WebViewClient() { }webView.loadUrl(course.getString(TAG_Grade)); }); xml: <TextView android:id="@+id/textView9" android:layout_marginLeft="110dp" android:layout_marginTop="365dp" android:textColor="#000" android:textSize="14sp" android:layout_width="fill_parent" android:layout_height="fill_parent" android:autoLink="web" android:onClick="onClick" /> 我知道`course.getString(TAG_Grade)`会从数据库中获得url,但是还是不能正常运行,请求帮忙,谢谢!
AndroidSQLite数据库删除数据后ListView的更新
一款记账的软件,我的数据存储在SQLite中,当我长按item时,弹出对话框并确定删除该item,但是数据库中的删掉了,activity中的listView中该item还在,依理来说是因为我的adapter适配器加载的还是内存中的数据,但是小白还是没有想到好的解决办法,我试了使用广播,但是出现整个页面的item都被删了(数据库的其他还在)。其他的各种办法也都试了还是不行,无奈求助各位看到帖子的大神。讲解的好,我绝对给高分。先谢过各位了。 ![图片说明](https://img-ask.csdn.net/upload/201703/22/1490187215_17835.png) 适配器代码在此: ``` public class CostListAdapter extends BaseAdapter { private List<CostBean> mList; private Context mContext; private LayoutInflater mInflater; public CostListAdapter(Context context, final List<CostBean> list){ mContext = context; mList = list; mInflater = LayoutInflater.from(context); IntentFilter intentFilter = new IntentFilter(); intentFilter.addAction("com.zsf.accountbook.MY_BROADCAST"); context.registerReceiver(new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { mList.clear(); mList = list; notifyDataSetChanged(); } },intentFilter); } @Override public int getCount() { return mList.size(); } @Override public Object getItem(int position) { return mList.get(position); } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder holder = null; if (convertView == null){ holder = new ViewHolder(); convertView = mInflater.inflate(R.layout.list_item,null); holder.mTvCostCategory = (TextView) convertView.findViewById(R.id.tv_category); holder.mTvCostDate = (TextView) convertView.findViewById(R.id.tv_date); holder.mTvCostMoney = (TextView) convertView.findViewById(R.id.tv_money); convertView.setTag(holder); }else { holder = (ViewHolder) convertView.getTag(); } CostBean costBean = mList.get(position);// holder.mTvCostCategory.setText(costBean.costCategory); holder.mTvCostDate.setText(costBean.costDate); holder.mTvCostMoney.setText(costBean.costMoney); return convertView; } private static class ViewHolder{ public TextView mTvCostCategory; public TextView mTvCostDate; public TextView mTvCostMoney; } } ``` ![图片说明](https://img-ask.csdn.net/upload/201703/22/1490187234_665074.png) ![图片说明](https://img-ask.csdn.net/upload/201703/22/1490187852_566687.gif) 漏掉了数据库部分的代码: ![图片说明](https://img-ask.csdn.net/upload/201703/22/1490188335_213349.png)
关于Android中textview的分段
我在一个文本框内写入了以下信息,Tom;13800138000;广东省广州市; 我想将它分为3部分,然后分别存进数据库的 username,number,address中, 我想请教一下如何将文本框内的信息分段取出。
Android studio 连接数据库问题 我这样写有错吗帮我看看
package com.example.administrator.testdate; import android.os.Bundle; import android.os.StrictMode; import android.support.design.widget.FloatingActionButton; import android.support.design.widget.Snackbar; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.Button; import android.widget.EditText; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.Statement; public class MainActivity extends AppCompatActivity { String Username="root"; //数据库用户名 String Password="12345678"; //数据库用户密码 Button button1; Button button2; EditText textView1; EditText textView2; Connection conn=null; Statement stmt=null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); button1 = (Button) findViewById(R.id.button1); button2 = (Button) findViewById(R.id.button2); textView1=(EditText)findViewById(R.id.editText2); textView2=(EditText)findViewById(R.id.editText) ; StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder().detectDiskReads().detectDiskWrites().detectNetwork().penaltyLog().build()); StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder().detectLeakedSqlLiteObjects().detectLeakedClosableObjects().penaltyLog().penaltyDeath().build()); FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); fab.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) .setAction("Action", null).show(); } }); button1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { connection(); } }); button2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { textView1.setText(""); textView2.setText(""); } }); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.menu_main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); //noinspection SimplifiableIfStatement if (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); } public void connection() { String username = textView1.getText().toString(); String password=textView2.getText().toString(); if (username != null) { //打开数据库 try {//注册驱动程序 Class.forName("com.mysql.jdbc.Driver"); } catch (java.lang.ClassNotFoundException e) { System.err.println("Driver Error " + e.getMessage()); } //连接数据库并创建Statement 对象 String sConnStr = "jdbc:mysql://localhost/testdate?user=" + Username + "&password=" + Password + "&useUnicode=true&characterEncoding=utf8"; try { conn = DriverManager.getConnection(sConnStr); conn.setAutoCommit(true); //更新数据库 String sql = "insert into testdate(username,password) values(?,?)"; PreparedStatement sta = conn.prepareStatement(sql); sta.setString(1, username); sta.setString(2, password); sta.executeUpdate(); sta.close(); conn.close(); } catch (Exception e) { System.err.println("数据库连接错误: " + e.getMessage()); return; } } } }
安卓在Oncrate里面用litepal读取数据库 程序会闪退
我在就定义了两个editext一个textview一个button ``` protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.first_layout); editText = (EditText)findViewById(R.id.edit); editText1=(EditText)findViewById(R.id.edit1); textView = (TextView)findViewById(R.id.text); Button button =(Button)findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Course course = new Course(); course.setI(editText.getText().toString()); course.setJ(editText1.getText().toString()); course.save(); } }); List<Course> courses = DataSupport.findAll(Course.class); for (Course i:courses){ textView.setText(i.getI()+" "+i.getJ()+"\n"); } } ```
jdbc通过1433端口连接sqlserver数据库总是失败
最近在做一个小项目,在android的额产品里塞中直接用jdbc连接本地服务器的sqlserver数据库的时候出现这个错误:“请验证连接属性,并检查 SQL Server 的实例正在主机上运行, 且在此端口接受 TCP/IP 连接,还要确保防火墙没有阻止到此端口的 TCP 连接” 在网上查阅了很多资料,server的端口都是1433,IP2也启动了,sql实例也都启动了,server服务也重新启动了,防火墙也关闭了,但是就是一直连不上,大家有什么好的方法吗 这是简单的测试代码: package com.example.myfinallytest; import android.support.v7.app.ActionBarActivity; import android.widget.TextView; import android.os.Bundle; import android.os.StrictMode; import java.sql.*; public class MainActivity extends ActionBarActivity { private TextView Text; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder() .detectDiskReads() .detectDiskWrites() .detectNetwork() .penaltyLog() .build()); StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder() .detectLeakedSqlLiteObjects() .detectLeakedClosableObjects() .penaltyLog() .penaltyDeath() .build()); Text = (TextView)findViewById(R.id.Test); System.out.println("1"); Connect(); System.out.println("2"); } public Connection Connect(){ String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; //加载驱动 System.out.println("加载驱动"); String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=Test"; //连接数据库 System.out.println("加载URL"); String userName = "sa"; //服务器用户名 String userPassword = "12345"; //服务器密码 Connection Con = null; try{ System.out.println("进入try"); Class.forName(driverName).newInstance(); //加载驱动到java虚拟机 System.out.println("加载JAVA虚拟机"); Con = DriverManager.getConnection(dbURL,userName,userPassword); Text.setText("连接成功!"); System.out.println("连接成功!"); }catch(Exception e){ e.printStackTrace(); Text.setText("连接失败!"); System.out.println("连接失败!"); } return Con; } } ![![![![图片说明](https://img-ask.csdn.net/upload/201605/05/1462417358_289781.png)图片说明](https://img-ask.csdn.net/upload/201605/05/1462417352_919748.png)图片说明](https://img-ask.csdn.net/upload/201605/05/1462417346_945896.png)图片说明](https://img-ask.csdn.net/upload/201605/05/1462417340_452229.png)
android编程:两个页面跳转时传值的问题
第一个活动DishOrderActivity中有一个listview从数据库中加载数据,然后为它设置监听器,想把点到的item的id传给下一个活动,就是DishShow。DishShow中接受传来的id值,然后在数据库中查询符合这个id的项目,并把该项目的名称、价格、介绍属性用setText()传给DishShow用的布局中的TextView中。 但是运行的时候,页面中的TextView不显示数据库中数据,还是空的。求帮助。 ![图片说明](https://img-ask.csdn.net/upload/201711/03/1509693803_373941.png) ![图片说明](https://img-ask.csdn.net/upload/201711/03/1509693872_551404.png) ![图片说明](https://img-ask.csdn.net/upload/201711/03/1509693932_17679.png) ![dish表](https://img-ask.csdn.net/upload/201711/03/1509693988_897955.png) ![图片说明](https://img-ask.csdn.net/upload/201711/03/1509694178_952213.png) ![图片说明](https://img-ask.csdn.net/upload/201711/03/1509694217_658031.png)
android SQLite数据库做完了以后程序运行不了,把有关数据库所有东西删了以后就可以运行
``` package com.test.mark4; import java.util.regex.Matcher; import java.util.regex.Pattern; import android.app.Activity; import android.app.AlertDialog; import android.content.ContentValues; import android.content.SharedPreferences; import android.content.SharedPreferences.Editor; import android.database.sqlite.SQLiteDatabase; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.view.Window; import android.widget.Button; import android.widget.EditText; import android.widget.LinearLayout; import android.widget.TextView; public class function31 extends Activity{ private MyDatabaseHelper dbHelper; EditText cs,dh,hsds,qsds; TextView gcc,t1,t2,t3,t4,t5,t6,t7; Button btn1,btn2,btn3,btn4,btn6,btn7; int num=0,v1=0,s=1; Button back; Button btn[]=new Button[25]; double j,x;//平均高程差 double[]d=new double[25]; @Override protected void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题栏 setContentView(R.layout.function31_layout); dbHelper=new MyDatabaseHelper(this,"data.db",null,1); back=(Button)findViewById(R.id.head_TitleBackBtn);//返回按钮 back.setOnClickListener(new OnClickListener(){ public void onClick(View v){ finish(); } }); cs=(EditText)findViewById(R.id.editText1); dh=(EditText)findViewById(R.id.editText2); hsds=(EditText)findViewById(R.id.editText3); qsds=(EditText)findViewById(R.id.editText4); btn1=(Button)findViewById(R.id.button1); btn2=(Button)findViewById(R.id.button2); btn6=(Button)findViewById(R.id.button5); btn7=(Button)findViewById(R.id.button6); gcc=(TextView)findViewById(R.id.textView8); btn3=(Button)findViewById(R.id.button3); btn4=(Button)findViewById(R.id.button4); t1=(TextView)findViewById(R.id.textView1); t2=(TextView)findViewById(R.id.textView2); t3=(TextView)findViewById(R.id.textView3); t4=(TextView)findViewById(R.id.textView4); t5=(TextView)findViewById(R.id.textView5); t6=(TextView)findViewById(R.id.textView6); t7=(TextView)findViewById(R.id.textView7); final LinearLayout l=(LinearLayout)findViewById(R.id.view); btn4.setVisibility(View.INVISIBLE); cs.setVisibility(View.INVISIBLE); dh.setVisibility(View.INVISIBLE); hsds.setVisibility(View.INVISIBLE); qsds.setVisibility(View.INVISIBLE); btn1.setVisibility(View.INVISIBLE); btn2.setVisibility(View.INVISIBLE); btn6.setVisibility(View.INVISIBLE); btn7.setVisibility(View.INVISIBLE); gcc.setVisibility(View.INVISIBLE); t1.setVisibility(View.INVISIBLE); t2.setVisibility(View.INVISIBLE); t3.setVisibility(View.INVISIBLE); t4.setVisibility(View.INVISIBLE); t5.setVisibility(View.INVISIBLE); t6.setVisibility(View.INVISIBLE); t7.setVisibility(View.INVISIBLE); btn3.setOnClickListener(new OnClickListener(){//+ public void onClick(View v){ num+=1; btn[num]=new Button(function31.this); btn[num].setId(num); btn[num].setText(String.valueOf(num)); l.addView(btn[num]); if(num!=0) { btn4.setVisibility(View.VISIBLE); cs.setVisibility(View.VISIBLE); dh.setVisibility(View.VISIBLE); hsds.setVisibility(View.VISIBLE); qsds.setVisibility(View.VISIBLE); btn1.setVisibility(View.VISIBLE); btn2.setVisibility(View.VISIBLE); btn6.setVisibility(View.VISIBLE); btn7.setVisibility(View.VISIBLE); gcc.setVisibility(View.VISIBLE); t1.setVisibility(View.VISIBLE); t2.setVisibility(View.VISIBLE); t3.setVisibility(View.VISIBLE); t4.setVisibility(View.VISIBLE); t5.setVisibility(View.VISIBLE); t6.setVisibility(View.VISIBLE); t7.setVisibility(View.VISIBLE); } btn[num].setOnClickListener(new OnClickListener(){//监视新建button @Override public void onClick(View v) { // TODO Auto-generated method stub s=v.getId(); SharedPreferences sj = getSharedPreferences(String.valueOf(s),0);//SharedPreferences输出信息 String Str1=sj.getString("cs", ""); String Str2=sj.getString("dh", ""); String Str3=sj.getString("hsds", ""); String Str4=sj.getString("qsds", ""); String Str5=sj.getString("gcc", ""); cs.setText(Str1); dh.setText(Str2); hsds.setText(Str3); qsds.setText(Str4); gcc.setText(Str5); } }); } }); btn4.setOnClickListener(new OnClickListener(){//+ public void onClick(View v){ l.removeView(btn[num]);; num-=1; if(num==0){ btn4.setVisibility(View.INVISIBLE); cs.setVisibility(View.INVISIBLE); dh.setVisibility(View.INVISIBLE); hsds.setVisibility(View.INVISIBLE); qsds.setVisibility(View.INVISIBLE); btn1.setVisibility(View.INVISIBLE); btn2.setVisibility(View.INVISIBLE); btn6.setVisibility(View.INVISIBLE); btn7.setVisibility(View.INVISIBLE); gcc.setVisibility(View.INVISIBLE); t1.setVisibility(View.INVISIBLE); t2.setVisibility(View.INVISIBLE); t3.setVisibility(View.INVISIBLE); t4.setVisibility(View.INVISIBLE); t5.setVisibility(View.INVISIBLE); t6.setVisibility(View.INVISIBLE); t7.setVisibility(View.INVISIBLE); } } }); btn1.setOnClickListener(new OnClickListener(){//计算 public void onClick(View v){ String Str1=cs.getText().toString(); String Str2=dh.getText().toString(); String numStr1=hsds.getText().toString(); String numStr2=qsds.getText().toString(); Pattern p = Pattern.compile("\\d+\\.\\d+$|-\\d+\\.\\d+$|^\\d+$|-\\d+$"); Matcher n=p.matcher(numStr1); Matcher m=p.matcher(numStr2); if(n.matches()&m.matches()){ double a=Double.parseDouble(numStr1); double b=Double.parseDouble(numStr2); double c=(a-b)/2; d[s]=c; gcc.setText(String.valueOf(c)); String Str3=gcc.getText().toString(); SharedPreferences sj = getSharedPreferences(String.valueOf(s),0);//SharedPreferences记录信息 sj.edit().clear().commit(); Editor editor=sj.edit(); editor.putString("cs", Str1); editor.putString("dh", Str2); editor.putString("hsds", numStr1); editor.putString("qsds", numStr2); editor.putString("gcc", Str3); editor.commit(); //SQLite SQLiteDatabase db=dbHelper.getWritableDatabase(); ContentValues values=new ContentValues(); values.put("cs", Str1); values.put("dh", Str2); values.put("hsds", numStr1); values.put("qsds", numStr2); values.put("gcc", Str3); db.insert("f31", null, values); values.clear(); } else { AlertDialog.Builder dialog=new AlertDialog.Builder(function31.this); dialog.setTitle("提示"); dialog.setMessage("请输入正确数值"); dialog.setCancelable(false); dialog.setPositiveButton("OK", null); dialog.show(); } } }); btn2.setOnClickListener(new OnClickListener(){//清空 public void onClick(View v){ cs.setText(""); dh.setText(""); hsds.setText(""); qsds.setText(""); gcc.setText(""); } }); btn6.setOnClickListener(new OnClickListener(){ @Override public void onClick(View v) { // TODO Auto-generated method stub for(int y=1;y<=num;y++){ j+=d[y]; } x=j/num; //SharedPreferences pj = getSharedPreferences("data",0);//SharedPreferences记录信息 //Editor editor=pj.edit(); //editor.putInt("chs", num); //editor.putFloat("pj", (float) x); } }); } } ``` MyDatabaseHelper ``` package com.test.mark4; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteDatabase.CursorFactory; import android.database.sqlite.SQLiteOpenHelper; public class MyDatabaseHelper extends SQLiteOpenHelper{ public static final String CREATE_F31="creat table f31(" +"cs text primary key autoincrement," +"chs integer," +"dh text," +"hsds text," +"qsds text," +"gcc text," +"pj real)"; public MyDatabaseHelper(Context context,String name,CursorFactory factory,int version){ super(context,name,factory,version); } @Override public void onCreate(SQLiteDatabase db) { // TODO Auto-generated method stub db.execSQL(CREATE_F31); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { // TODO Auto-generated method stub } } ```
SQLite数据库问题,无论怎么安装都有问题
本人在实验SQLite数据库,代码在Eclipse上面没问题,一到手机上面安装就有问题,手机是三星自带androi5.0.1系统 代码如下:package com.example.sqltest; import android.app.Activity; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.TextView; import android.widget.Toast; public class MainActivity extends Activity{ Button b,b1; TextView t1; myDatabaseHelper myHelp; SQLiteDatabase mydb=myHelp.getReadableDatabase(); String sql="select * from newsif"; @Override public void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); b=(Button)findViewById(R.id.b); b1=(Button)findViewById(R.id.b1); t1=(TextView)findViewById(R.id.text2); myHelp=new myDatabaseHelper(this,"myDict.db3",1); b.setOnClickListener(new OnClickListener(){ @Override public void onClick(View v) { // TODO Auto-generated method stub insertData(myHelp.getReadableDatabase(),"1500","2012-12-12"); Toast.makeText(MainActivity.this, "数据插入成功",Toast.LENGTH_SHORT).show(); } }); b1.setOnClickListener(new OnClickListener(){ @Override public void onClick(View v) { // TODO Auto-generated method stub if(myHelp.getReadableDatabase()!=null){ Toast.makeText(MainActivity.this, "数据库打开或者创建成功", Toast.LENGTH_SHORT).show(); Cursor cursor=mydb.rawQuery(sql, null); String text=""; while(cursor.moveToFirst()) { text=cursor.getString(cursor.getColumnIndex("data"))+" " +cursor.getString(cursor.getColumnIndex("time")); } t1.append(text); } } }); } private void insertData(SQLiteDatabase db ,String word,String detail){ db.execSQL("insert into dict values(?,?)", new String[]{word,detail}); } @Override public void onDestroy(){ super.onDestroy(); if(myHelp!=null) { myHelp.close(); } } } 错误提示如下 ![图片说明](https://img-ask.csdn.net/upload/201603/31/1459417909_567153.jpg)
怎么从数据库中取出数据放入listview
final SQLiteDatabase db = openOrCreateDatabase("record",MODE_PRIVATE,null); ListView listView=(ListView)findViewById(R.id.listView); map_list=getDataSource(db); SimpleAdapter adapter = new SimpleAdapter(this,map_list,R.layout.listview, new String[] { "time", "time1","type","type1","money","money1"}, new int[] { R.id.textView1,R.id.textView2,R.id.textView3,R.id.textView4,R.id.textView5,R.id.textView6}); listView.setAdapter(adapter); public static List<Map<String, String>> getDataSource(SQLiteDatabase db) { List<Map<String, String>> map_list = new ArrayList<Map<String, String>>(); Map<String, String> map = new HashMap<String, String>(); Cursor cursor = db.rawQuery("select * from record where name = ?",new String[] {name} ); while (cursor.moveToNext()) { String type = cursor.getString(2); String money = cursor.getString(1); map = new HashMap<String, String>(); map.put("time", "时间:"); map.put("time1", time); map.put("type", "类型:"); map.put("type1", type); map.put("money", "金额:"); map.put("money1", money); map_list.add(map); } return map_list; } cursor就是出错,麻烦帮忙看下哪里出错
求指教 android mysql更新问题
环境 Android 6.0 Android studio Xampp Mysql连接方式JDBC 数据在更新的时候,不管数据库里面含不含有想修改的数据 按下在库移动的按钮之后都会提示”移动完了“ 如何加一个验证的过程,如没有符合的Hinban和Tanaban1则提示输入错误 求指教 代码如下 ``` protected String doInBackground(String... strings) { try{ Class.forName("com.mysql.jdbc.Driver"); Connection conn= DriverManager.getConnection(url,user,pass); if (conn==null){ msg="接続エラー"; Toast.makeText(getApplicationContext(),msg, Toast.LENGTH_LONG).show(); } else { String query="UPDATE snk_io SET Tanaban='"+Tanaban2+"' WHERE Hinban='"+Hinban+"' and Tanaban='"+Tanaban1+"'"; Statement stmt = conn.createStatement(); stmt.executeUpdate(query); msg="移動完了です!!"; } conn.close(); } catch (Exception e) { msg="エラー発生しました。"; e.printStackTrace(); } return msg; } @Override protected void onPostExecute(String msg){ textView.setText(msg); ET1.setText(""); ET2.setText(""); ET3.setText(""); //Toast.makeText(getApplicationContext(),"入力しました", Toast.LENGTH_SHORT).show(); } ```
安卓直接连mysql数据库出现问题,求大神解答
代码如下: package com.mysql; import java.sql.DriverManager; import java.sql.ResultSet; import com.mysql.jdbc.Connection; import com.mysql.jdbc.Statement; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.TextView; public class MysqlActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Button btn=(Button)findViewById(R.id.btn); btn.setOnClickListener(new OnClickListener() { public void onClick(View v) { sqlCon(); } }); } private void mSetText(String str){ TextView txt=(TextView)findViewById(R.id.txt); txt.setText(str); } private void sqlCon(){ try { Class.forName("com.mysql.jdbc.Driver"); } catch (Exception e) { e.printStackTrace(); } try { String url ="jdbc:mysql://202.114.129.213:3306/android";//?user=root&password=admin&useUnicode=true&characterEncoding=UTF-8"; Connection conn =(Connection) DriverManager.getConnection(url, "root", "admin"); //user=root&password=admin&useUnicode=true&characterEncoding=UTF-8";//链接数据库语句 Statement stmt=(Statement) conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); String sql="select * from tb_user";//查询user表语句 ResultSet rs=stmt.executeQuery(sql);//执行查询 StringBuilder str=new StringBuilder(); while(rs.next()){ str.append(rs.getString(1)+"\n"); } mSetText(str.toString()); rs.close(); stmt.close(); conn.close(); } catch (Exception e) { e.printStackTrace(); } } } 一直显示错误提示,“找不到javax.naming.StringRef”,求大神帮忙解决一下
用ExpandableListView显示数据库的字段值
![图片说明](https://img-ask.csdn.net/upload/201501/19/1421651092_959785.png) 问题是从数据表(person表)读取数据(personname),用ExpandableListView显示数据 这是最后的结果图 写了两个文件PersonActivity和ExpandableAdapter ![图片说明](https://img-ask.csdn.net/upload/201501/19/1421651224_266504.png) ![图片说明](https://img-ask.csdn.net/upload/201501/19/1421651306_442127.png) 这两张代码都是写在PersonActivity里面,错误在于这样直接setText就是不行,取不到值,但是之前从person表里面已经读取到了字段,我每一个和TextView和edittext都写了不同的名字,就是直接这样settext不行,必须要在adapter里面加载数据吗?如何加载,各位老师帮忙解答一下,谢谢了,比较急~~~~
测试字段是否为空并预防用户将空字段输入sqlite数据库
如何测试该字段不是空值呢? 我想让程序显示一个提示:用户已经完全填充好所有字段,但是下面这段代码还会显示其他情况,比如name值为null, number有值的情况。 public void onClick(View arg0) { switch(arg0.getId()) { case R.id.bSQLUpdate: boolean diditwork = true; try { String name = sqlName.getText().toString(); String number = sqlNumber.getText().toString(); GroupDb entry = new GroupDb(ContactDb.this); entry.open(); if(name != null && number != null) { if((!entry.hasDuplicateNameNumber(name, number)) ) { entry.createEntry(name, number); } else { diditwork = false; Dialog d = new Dialog(this); d.setTitle("Error"); TextView tv = new TextView(this); tv.setText("Duplicate name or number. Please try again."); d.setContentView(tv); d.show(); sqlName.setText(""); sqlNumber.setText(""); } } else { diditwork = false; Dialog d = new Dialog(this); d.setTitle("Error"); TextView tv = new TextView(this); tv.setText("Please fill up all fields. Please try again."); d.setContentView(tv); d.show(); sqlName.setText(""); sqlNumber.setText(""); } entry.close(); } catch(Exception e) { diditwork = false; String error = e.toString(); Dialog d = new Dialog(this); d.setTitle("Update failed"); TextView tv = new TextView(this); tv.setText(error); d.setContentView(tv); d.show(); sqlName.setText(""); sqlNumber.setText(""); } finally { if(diditwork) { Dialog d = new Dialog(this); d.setTitle("Contact list updated"); TextView tv = new TextView(this); tv.setText("Success"); d.setContentView(tv); d.show(); sqlName.setText(""); sqlNumber.setText(""); } } break; case R.id.bSQLOpenView: Intent intent = new Intent(); intent.setClass(ContactDb.this, CustomListView.class); startActivityForResult(intent, 0); break; } }// end onclick
android studiod 从数据库读取数据失败
从数据库读取数据到listview,但是不知为什么,在没添加数据进数据库的时候,能进activity,但是一旦添加进去以后就开始报错了 DBhelper.java public class DBHelper extends SQLiteOpenHelper{ private final static String DATABASE_NAME = "demo.db"; private final static int DATABASE_VERSION = 1; private final static String TABLE_NAME = "request_list"; public final static String REQUEST_ID = "request_id"; public final static String REPORTER_NAME = "reporter_name"; public final static String S_DESCRIPTION = "s_description"; public final static String L_DESCRIPTION = "l_description"; public final static String DEPARTMENT = "department"; public final static String CATEGORY = "category"; public DBHelper(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); Log.e("Database operations", "Database created/opened"); } @Override public void onCreate(SQLiteDatabase db) { String sql = "CREATE TABLE " + TABLE_NAME + " (" + REQUEST_ID + " INTEGER primary key autoincrement, " + "" + REPORTER_NAME + " text, " + "" + S_DESCRIPTION + " text, " + "" + L_DESCRIPTION + " text, " + "" + DEPARTMENT + " text, " + "" + CATEGORY + " text);"; db.execSQL(sql); Log.e("Database operations", "Table created/opened"); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { String sql = "DROP TABLE IF EXISTS " + TABLE_NAME; db.execSQL(sql); onCreate(db); } public Cursor select() { SQLiteDatabase db = this.getReadableDatabase(); Cursor cursor = db .query(TABLE_NAME, null, null, null, null, null, null); return cursor; } public Cursor getInformation(SQLiteDatabase db) { Cursor cursor; String[] projection = {REPORTER_NAME,S_DESCRIPTION,L_DESCRIPTION,DEPARTMENT,CATEGORY}; cursor=db.query(TABLE_NAME,projection,null,null,null,null,null,null); return cursor; } //增加操作 public long insert(String s_description,String name,String department, String category,String l_description) { SQLiteDatabase db = this.getWritableDatabase(); /* ContentValues */ ContentValues cv = new ContentValues(); cv.put(S_DESCRIPTION, s_description); cv.put(L_DESCRIPTION,l_description); cv.put(REPORTER_NAME,name); cv.put(DEPARTMENT,department); cv.put(CATEGORY,category); long row = db.insert(TABLE_NAME, null, cv); return row; } //删除操作 public void delete(int id) { SQLiteDatabase db = this.getWritableDatabase(); String where = REQUEST_ID + " = ?"; String[] whereValue ={ Integer.toString(id) }; db.delete(TABLE_NAME, where, whereValue); } //修改操作 public void update(int id, String s_description,String name,String department, String category,String l_description) { SQLiteDatabase db = this.getWritableDatabase(); String where = REQUEST_ID + " = ?"; String[] whereValue = { Integer.toString(id) }; ContentValues cv = new ContentValues(); cv.put(S_DESCRIPTION, s_description); cv.put(L_DESCRIPTION,l_description); cv.put(REPORTER_NAME,name); cv.put(DEPARTMENT,department); cv.put(CATEGORY,category); db.update(TABLE_NAME, cv, where, whereValue); } } DataListActivity.java public class DataListActivity extends ActionBarActivity { ListView listView; SQLiteDatabase sqLiteDatabase; DBHelper dbHelper; Cursor cursor; ListDataAdapter listDataAdapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.data_list_layout); listView = (ListView) findViewById(R.id.list_view); listDataAdapter = new ListDataAdapter(getApplicationContext(),R.layout.reporter_my_request); listView.setAdapter(listDataAdapter); dbHelper = new DBHelper(getApplicationContext()); sqLiteDatabase = dbHelper.getReadableDatabase(); cursor = dbHelper.getInformation(sqLiteDatabase); if(cursor.moveToFirst()) { do { String name,title,department,category,description; name = cursor.getString(0); title= cursor.getString(1); department=cursor.getString(2); category=cursor.getString(3); description=cursor.getString(4); DataProvider dataProvider=new DataProvider(name,title,department,category,description); listDataAdapter.add(dataProvider); }while (cursor.moveToNext()); } dbHelper.close(); } } DataProvider.java public class DataProvider { private String name; private String title; private String department; private String category; private String description; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public String getDepartment() { return department; } public void setDepartment(String department) { this.department = department; } public String getCategory() { return category; } public void setCategory(String category) { this.category = category; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } public DataProvider(String name,String title,String department,String category,String description){ this.name= name; this.title = title; this.department= department; this.category= category; this.description = description; } } ListDataAdapter.java public class ListDataAdapter extends ArrayAdapter { List list = new ArrayList(); public ListDataAdapter(Context context, int resource) { super(context, resource); } static class LayoutHandler{ TextView NAME,TITLE,DEPARTMENT,CATEGORY,DESCRIPTION; } @Override public void add(Object object) { super.add(object); list.add(object); } @Override public int getCount() { return list.size(); } @Override public Object getItem(int position) { return list.get(position); } @Override public View getView(int position, View convertView, ViewGroup parent) { View row = convertView; LayoutHandler layoutHandler; if(row == null){ LayoutInflater layoutInflater = (LayoutInflater)this.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE); row = layoutInflater.inflate(R.layout.reporter_my_request,parent,false); layoutHandler = new LayoutHandler(); layoutHandler.NAME = (TextView)row.findViewById(R.id.text_name); layoutHandler.TITLE = (TextView)row.findViewById(R.id.text_title); layoutHandler.DEPARTMENT = (TextView)row.findViewById(R.id.text_department); layoutHandler.CATEGORY = (TextView)row.findViewById(R.id.text_category); row.setTag(layoutHandler); } else { layoutHandler = (LayoutHandler)row.getTag(); } DataProvider dataProvider = (DataProvider)this.getItem(position); layoutHandler.NAME.setText(dataProvider.getName()); layoutHandler.TITLE.setText(dataProvider.getTitle()); layoutHandler.DEPARTMENT.setText(dataProvider.getDepartment()); layoutHandler.CATEGORY.setText(dataProvider.getCategory()); layoutHandler.DESCRIPTION.setText(dataProvider.getDescription()); return row; } }
终于明白阿里百度这样的大公司,为什么面试经常拿ThreadLocal考验求职者了
点击上面↑「爱开发」关注我们每晚10点,捕获技术思考和创业资源洞察什么是ThreadLocalThreadLocal是一个本地线程副本变量工具类,各个线程都拥有一份线程私有的数
win10系统安装教程(U盘PE+UEFI安装)
一、准备工作 u盘,电脑一台,win10原版镜像(msdn官网) 二、下载wepe工具箱  极力推荐微pe(微pe官方下载) 下载64位的win10 pe,使用工具箱制作启动U盘打开软件,   选择安装到U盘(按照操作无需更改) 三、重启进入pe系统   1、关机后,将U盘插入电脑 2、按下电源后,按住F12进入启动项选择(技嘉主板是F12)     选择需要启
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。 也可以说是一个小人工智障。 思路可以运用在不同地方,主要介绍的是思路。
Nginx 软件层面加强Nginx性能优化的面试问答和解决方案
Nginx 软件层面加强Nginx性能优化的面试问答和解决方案 去年我去爱卡汽车面试PHP,一轮和二轮面的都不错,在三轮面到Nginx的时候很多问题当时不知道怎么回答,确实没有深入学习过,花了一段时间的学习,终于能解答Nginx高性能优化的问题了,10月24号为了获得程序员勋章,发布了半个优化笔记,浏览到了1000+,受到这个鼓舞,我抽时间在仔细整理下关于Nginx性能优化的问题,我们从软件说起。...
【管理系统课程设计】美少女手把手教你后台管理
【文章后台管理系统】URL设计与建模分析+项目源码+运行界面 栏目管理、文章列表、用户管理、角色管理、权限管理模块(文章最后附有源码) 1. 这是一个什么系统? 1.1 学习后台管理系统的原因 随着时代的变迁,现如今各大云服务平台横空出世,市面上有许多如学生信息系统、图书阅读系统、停车场管理系统等的管理系统,而本人家里就有人在用烟草销售系统,直接在网上完成挑选、购买与提交收货点,方便又快捷。 试想,若没有烟草销售系统,本人家人想要购买烟草,还要独自前往药...
11月19日科技资讯|华为明日发布鸿蒙整体战略;京东宣告全面向技术转型;Kotlin 1.3.60 发布
「极客头条」—— 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧。扫描上方二维码进入 CSDN App 可以收听御姐萌妹 Style 的人工版音频哟。 一分钟速览新闻点! 6G 专家组成员:速率是 5G 的 10 至 100 倍,预计 2030 年商用 雷军:很多人多次劝我放弃WPS,能坚持下来并不是纯粹的商业决定 ...
C语言魔塔游戏
很早就很想写这个,今天终于写完了。 游戏截图: 编译环境: VS2017 游戏需要一些图片,如果有想要的或者对游戏有什么看法的可以加我的QQ 2985486630 讨论,如果暂时没有回应,可以在博客下方留言,到时候我会看到。 下面我来介绍一下游戏的主要功能和实现方式 首先是玩家的定义,使用结构体,这个名字是可以自己改变的 struct gamerole { char n
化繁为简 - 腾讯计费高一致TDXA的实践之路
导语:腾讯计费是孵化于支撑腾讯内部业务千亿级营收的互联网计费平台,在如此庞大的业务体量下,腾讯计费要支撑业务的快速增长,同时还要保证每笔交易不错账。采用最终一致性或离线补...
Python爬虫爬取淘宝,京东商品信息
小编是一个理科生,不善长说一些废话。简单介绍下原理然后直接上代码。 使用的工具(Python+pycharm2019.3+selenium+xpath+chromedriver)其中要使用pycharm也可以私聊我selenium是一个框架可以通过pip下载 pip install selenium -i https://pypi.tuna.tsinghua.edu.cn/simple/ 
Java学习笔记(七十二)—— Cookie
概述 会话技术: 会话:一次会话中包含多次请求和响应 一次会话:浏览器第一次给服务器发送资源请求,会话建立,直到有一方断开为止 功能:在一次会话的范围内的多次请求间,共享数据 方式: 客户端会话技术:Cookie,把数据存储到客户端 服务器端会话技术:Session,把数据存储到服务器端 Cookie 概念:客户端会话技术,将数据存储到客户端 快速入门: 使用步骤: 创建C
阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
这种新手都不会范的错,居然被一个工作好几年的小伙子写出来,差点被当场开除了。
Java工作4年来应聘要16K最后没要,细节如下。。。
前奏: 今天2B哥和大家分享一位前几天面试的一位应聘者,工作4年26岁,统招本科。 以下就是他的简历和面试情况。 基本情况: 专业技能: 1、&nbsp;熟悉Sping了解SpringMVC、SpringBoot、Mybatis等框架、了解SpringCloud微服务 2、&nbsp;熟悉常用项目管理工具:SVN、GIT、MAVEN、Jenkins 3、&nbsp;熟悉Nginx、tomca
2020年,冯唐49岁:我给20、30岁IT职场年轻人的建议
点击“技术领导力”关注∆  每天早上8:30推送 作者| Mr.K   编辑| Emma 来源| 技术领导力(ID:jishulingdaoli) 前天的推文《冯唐:职场人35岁以后,方法论比经验重要》,收到了不少读者的反馈,觉得挺受启发。其实,冯唐写了不少关于职场方面的文章,都挺不错的。可惜大家只记住了“春风十里不如你”、“如何避免成为油腻腻的中年人”等不那么正经的文章。 本文整理了冯
程序员该看的几部电影
##1、骇客帝国(1999) 概念:在线/离线,递归,循环,矩阵等 剧情简介: 不久的将来,网络黑客尼奥对这个看似正常的现实世界产生了怀疑。 他结识了黑客崔妮蒂,并见到了黑客组织的首领墨菲斯。 墨菲斯告诉他,现实世界其实是由一个名叫“母体”的计算机人工智能系统控制,人们就像他们饲养的动物,没有自由和思想,而尼奥就是能够拯救人类的救世主。 可是,救赎之路从来都不会一帆风顺,到底哪里才是真实的世界?
作为一个程序员,CPU的这些硬核知识你必须会!
CPU对每个程序员来说,是个既熟悉又陌生的东西? 如果你只知道CPU是中央处理器的话,那可能对你并没有什么用,那么作为程序员的我们,必须要搞懂的就是CPU这家伙是如何运行的,尤其要搞懂它里面的寄存器是怎么一回事,因为这将让你从底层明白程序的运行机制。 随我一起,来好好认识下CPU这货吧 把CPU掰开来看 对于CPU来说,我们首先就要搞明白它是怎么回事,也就是它的内部构造,当然,CPU那么牛的一个东
@程序员,如何花式构建线程?
作者 |曾建责编 | 郭芮出品 | CSDN(ID:CSDNnews)在项目和业务的开发中,我们难免要经常使用线程来进行业务处理,使用线程可以保证我们的业务在相互处理之间可以保证原子性...
破14亿,Python分析我国存在哪些人口危机!
2020年1月17日,国家统计局发布了2019年国民经济报告,报告中指出我国人口突破14亿。 猪哥的朋友圈被14亿人口刷屏,但是很多人并没有看到我国复杂的人口问题:老龄化、男女比例失衡、生育率下降、人口红利下降等。 今天我们就来分析一下我们国家的人口数据吧! 一、背景 1.人口突破14亿 2020年1月17日,国家统计局发布了 2019年国民经济报告 ,报告中指出:年末中国大陆总人口(包括31个
强烈推荐10本程序员在家读的书
很遗憾,这个鼠年春节注定是刻骨铭心的,新型冠状病毒让每个人的神经都是紧绷的。那些处在武汉的白衣天使们,尤其值得我们的尊敬。而我们这些窝在家里的程序员,能不外出就不外出,就是对社会做出的最大的贡献。 有些读者私下问我,窝了几天,有点颓丧,能否推荐几本书在家里看看。我花了一天的时间,挑选了 10 本我最喜欢的书,你可以挑选感兴趣的来读一读。读书不仅可以平复恐惧的压力,还可以对未来充满希望,毕竟苦难终
Linux自学篇——linux命令英文全称及解释
man: Manual 意思是手册,可以用这个命令查询其他命令的用法。 pwd:Print working directory 显示当前目录 su:Swith user 切换用户,切换到root用户 cd:Change directory 切换目录 ls:List files 列出目录下的文件 ps:Process Status 进程状态 mk
Python实战:抓肺炎疫情实时数据,画2019-nCoV疫情地图
文章目录1. 前言2. 数据下载3. 数据处理4. 数据可视化 1. 前言 今天,群里白垩老师问如何用python画武汉肺炎疫情地图。白垩老师是研究海洋生态与地球生物的学者,国家重点实验室成员,于不惑之年学习python,实为我等学习楷模。先前我并没有关注武汉肺炎的具体数据,也没有画过类似的数据分布图。于是就拿了两个小时,专门研究了一下,遂成此文。 2月6日追记:本文发布后,腾讯的数据源多次变更u
智力题(程序员面试经典)
NO.1  有20瓶药丸,其中19瓶装有1克/粒的药丸,余下一瓶装有1.1克/粒的药丸。给你一台称重精准的天平,怎么找出比较重的那瓶药丸?天平只能用一次。 解法 有时候,严格的限制条件有可能反倒是解题的线索。在这个问题中,限制条件是天平只能用一次。 因为天平只能用一次,我们也得以知道一个有趣的事实:一次必须同时称很多药丸,其实更准确地说,是必须从19瓶拿出药丸进行称重。否则,如果跳过两瓶或更多瓶药
在家远程办公效率低?那你一定要收好这个「在家办公」神器!
相信大家都已经收到国务院延长春节假期的消息,接下来,在家远程办公可能将会持续一段时间。 但是问题来了。远程办公不是人在电脑前就当坐班了,相反,对于沟通效率,文件协作,以及信息安全都有着极高的要求。有着非常多的挑战,比如: 1在异地互相不见面的会议上,如何提高沟通效率? 2文件之间的来往反馈如何做到及时性?如何保证信息安全? 3如何规划安排每天工作,以及如何进行成果验收? ......
作为一个程序员,内存和磁盘的这些事情,你不得不知道啊!!!
截止目前,我已经分享了如下几篇文章: 一个程序在计算机中是如何运行的?超级干货!!! 作为一个程序员,CPU的这些硬核知识你必须会! 作为一个程序员,内存的这些硬核知识你必须懂! 这些知识可以说是我们之前都不太重视的基础知识,可能大家在上大学的时候都学习过了,但是嘞,当时由于老师讲解的没那么有趣,又加上这些知识本身就比较枯燥,所以嘞,大家当初几乎等于没学。 再说啦,学习这些,也看不出来有什么用啊!
2020年的1月,我辞掉了我的第一份工作
其实,这篇文章,我应该早点写的,毕竟现在已经2月份了。不过一些其它原因,或者是我的惰性、还有一些迷茫的念头,让自己迟迟没有试着写一点东西,记录下,或者说是总结下自己前3年的工作上的经历、学习的过程。 我自己知道的,在写自己的博客方面,我的文笔很一般,非技术类的文章不想去写;另外我又是一个还比较热衷于技术的人,而平常复杂一点的东西,如果想写文章写的清楚点,是需要足够...
别低估自己的直觉,也别高估自己的智商
所有群全部吵翻天,朋友圈全部沦陷,公众号疯狂转发。这两周没怎么发原创,只发新闻,可能有人注意到了。我不是懒,是文章写了却没发,因为大家的关注力始终在这次的疫情上面,发了也没人看。当然,我...
Java坑人面试题系列: 包装类(中级难度)
Java Magazine上面有一个专门坑人的面试题系列: https://blogs.oracle.com/javamagazine/quiz-2。 这些问题的设计宗旨,主要是测试面试者对Java语言的了解程度,而不是为了用弯弯绕绕的手段把面试者搞蒙。 如果你看过往期的问题,就会发现每一个都不简单。 这些试题模拟了认证考试中的一些难题。 而 “中级(intermediate)” 和 “高级(ad
Spring Boot 2.x基础教程:使用JdbcTemplate访问MySQL数据库
在第2章节中,我们介绍了如何通过Spring Boot来实现HTTP接口,以及围绕HTTP接口相关的单元测试、文档生成等实用技能。但是,这些内容还不足以帮助我们构建一个动态应用的服务端程序。不论我们是要做App、小程序、还是传统的Web站点,对于用户的信息、相关业务的内容,通常都需要对其进行存储,而不是像第2章节中那样,把用户信息存储在内存中(重启就丢了!)。 对于信息的存储,现在已经有非常非常多...
基于Python的人脸自动戴口罩系统
目录 1、项目背景 2、页面设计 3、器官识别 4、退出系统 1、项目背景 2019年新型冠状病毒感染的肺炎疫情发生以来,牵动人心,举国哀痛,口罩、酒精、消毒液奇货可居。 抢不到口罩,怎么办?作为技术人今天分享如何使用Python实现自动戴口罩系统,来安慰自己,系统效果如下所示: 本系统的实现原理是借助 Dlib模块的Landmark人脸68个关键点检测库轻松识别出人脸五官
这个世界上人真的分三六九等,你信吗?
偶然间,在知乎上看到一个问题 一时间,勾起了我深深的回忆。 以前在厂里打过两次工,做过家教,干过辅导班,做过中介。零下几度的晚上,贴过广告,满脸、满手地长冻疮。   再回首那段岁月,虽然苦,但让我学会了坚持和忍耐。让我明白了,在这个世界上,无论环境多么的恶劣,只要心存希望,星星之火,亦可燎原。   下文是原回答,希望能对你能有所启发。   如果我说,这个世界上人真的分三六九等,
相关热词 c# 为空 判断 委托 c#记事本颜色 c# 系统默认声音 js中调用c#方法参数 c#引入dll文件报错 c#根据名称实例化 c#从邮件服务器获取邮件 c# 保存文件夹 c#代码打包引用 c# 压缩效率
立即提问