Tag: java的

平衡使用堆栈检查括号是否在字符串中关闭

我正在编写一个程序来检查是否在用户输入的字符串中关闭括号组,但我对如何操作感到困惑,因为我们需要使用堆栈来完成它。 我的想法是将括号添加到堆栈中(如果它们存在),然后如果出现一个右括号,则弹出堆栈中的前两个字符,如果第二个弹出的字符与第一个匹配(如括号匹配的类型和它既是开始和结束括号,那么线是平衡的。 但是,我需要让它能够处理包含多个括号和字符的字符串,例如: wfsfs[{{{(s;dkls(dslkf)s;dlkf}]}]}}}sd 我真的很困惑如何使用堆栈来完成这项工作! 有任何想法吗? 这基本上是我到目前为止提出的代码,但它不适用于多个括号 for (int i = 0; i < x.length(); i++){ if (x.charAt(i) == '('){ stack.push('('); } if (x.charAt(i) == '['){ stack.push('('); } if (x.charAt(i) == '{'){ stack.push('('); } if (x.charAt(i) == ')'){ stack.pop(); if (stack.empty()){ return true; } if (stack.pop() != ')'){ return true; } } if (x.charAt(i) == […]

隐藏用户的缓存数据,以便用户无法访问它

我已在我的应用程序中实现了离线缓存,为此我将图像存储在外部存储中。我会根据外部存储中的可用空间自动删除缓存数据,一旦限制达到指定值。我希望缓存数据为保持对用户的隐藏,以便用户无法访问它。是否可以隐藏用户的缓存数据?或者有什么方法可以使缓存的数据文件夹可见性在外部存储中不可见?

如何使用“LIKE”和“%”来检查android中的变量的相似性(Java代码)

我正在使用Java开发Android应用程序,我需要用Java代码查询数据库以检查userinput(variable)语句是否包含在我的SQLite数据库中使用LIKE查询和java代码中的rowQuery方法的rowQuery , 我使用了这段代码,但它不起作用: cursor = db.rawQuery(“SELECT shompet FROM sentence WHERE ” + column + ” LIKE ‘%” + newMessage + “%'”, null); newMessage是我的变量(userInput) 我读了类似的主题,但要么他们不是我的答案,要么他们是如此复杂。

Android O – 后台服务限制无法按预期工作

我只是根据Android O背景限制测试我现有的Android应用程序。 在测试中,我发现了一种奇怪的行为。 所以基本上在我的应用程序中,我正在使用后台服务,我在第一个活动中启动它。 所以现在问题是一旦活动和后台服务开始,我正在使用后退按钮关闭我的活动。 因此,根据服务概念,它会在后台运行。 大约1分钟后, onDestroy()方法被调用后台服务,但服务仍然在运行。 理想情况下,根据文档,它应该被杀死。 所以,我不知道这是一个问题还是什么问题。 作为参考,我创建了一个反映相同场景的示例代码,如下所示: 脚步 开始申请 单击“开始后台服务”按钮。 使用后退按钮关闭应用程序。 HomeActivity.java package com.icpl.otest; import android.content.Intent; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; import android.view.View; import com.icpl.otest.service.MyService; public class HomeActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_home); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); } public void onStartServiceClick(View view) […]

我不能在Mapbox中的自定义信息窗口中扩展视图。 (用图像设置getinfowindow)

我正在使用Mapbox和Android Studio IDE为Android做地图指南,但我很难处理自定义信息窗口。 我想给infowindow(我点击一个标记后的那个)充气但是到目前为止我想使用XML来进行简单的自定义(我愿意接受建议,我仍然需要为每一个添加不同的图像标记。)。 我在代码本身中使用自定义仅用于测试,但我想为那个purporse夸大XML。 下面的图片显示了我为视图开发的原型,下一个图像显示了我实际从测试中获得的内容(代码在getInfoWindow函数中)我正在使用下面的代码进行开发: XML中的原型(其中:ID-Translation-Type) 我得到了什么 下面是我正在使用的地图代码的一部分,下一个代码显示了XML代码。 主要代码(Mapa.Java): protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); MapboxAccountManager.start(this,getString(R.string.access_token)); setContentView(R.layout.activity_main); mapView = (MapView) findViewById(R.id.mapView); mapView.onCreate(savedInstanceState); mapView.getMapAsync(new OnMapReadyCallback() { @Override public void onMapReady(MapboxMap mapboxMap) { IconFactory iconFactory = IconFactory.getInstance(Mapa.this); Drawable iconDrawable = ContextCompat.getDrawable(Mapa.this, R.drawable.infoicon); Icon icon = iconFactory.fromDrawable(iconDrawable); mapboxMap.setInfoWindowAdapter(new MapboxMap.InfoWindowAdapter() { @Override public View getInfoWindow(@NonNull Marker marker) { […]

低帧率将位图写入canvas

我有一个动态壁纸,通过将每个帧绘制到canvas来运行循环动画。 我有一个单一的图像,大小与屏幕的确切尺寸相同。 我有一组400帧,大小恰好适合屏幕的底部三分之一; 这是动画发生的地方。 以下是显示它们的代码: public void updateBG() { mHandler.removeCallbacks(mUpdateDisplay); if (mVisible) { mHandler.postDelayed(mUpdateDisplay, 40); } if (imagesLoaded 0 || animEndX > 0 || animStartY > 0 || animEndY > 0) { c.drawBitmap(BitmapFactory.decodeByteArray(bitmapArray[totalFrames], 0, bitmapArray[totalFrames].length), null, destinationRect, p); Rect destinationRectAnim = new Rect(); destinationRectAnim.set(animX, animY, animX+animWidth, animY+animHeight); c.drawBitmap(BitmapFactory.decodeByteArray(bitmapArray[bgcycle], 0, bitmapArray[bgcycle].length), null, destinationRectAnim, p); } else […]

查找Galaxy Tab 10.1的IP地址以供应用

我已经为HTC欲望编写了一个应用程序,它获取设备的IP地址并将其打印到屏幕上。 当我将此应用程序安装到我的选项卡10.1时,IP地址以字母和数字以奇怪的格式出现? private String getIpAddress() { try { for (Enumeration en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();) { NetworkInterface intf = en.nextElement(); for (Enumeration enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements();) { InetAddress inetAddress = enumIpAddr.nextElement(); if (!inetAddress.isLoopbackAddress()) { return inetAddress.getHostAddress().toString(); } } } } catch(SocketException ex) { Log.e(TAG , ex.toString()); } return null; } 标签10.1有什么不同? (IP返回 – fe80 :: be47:60ff:feff:21e2) […]

来自Java服务器的持久http连接

我想在Java spring服务器和Android客户端之间创建持久连接。 我需要的是一种具有持久(长期HTTP)连接的推送机制,一旦可用,它就会将所有信息从服务器传输到客户端。 是否有任何可用的框架可以支持Java Spring。 有助于我实现此目的的教程或文档。

如何在java中以相同的方式洗牌两个列表?

我想以同样的方式洗牌两个名单。 假设我有两个列表问题和答案。 我想以同样的方式对它们进行洗牌,以便问题答案对保持不变。

在android中创建一个xml文档

所以我正在尝试在我的Android应用程序中创建一个xml文档。 我正在使用编写java应用程序时使用的代码。 我尝试如下所示: public void createxml() throws SAXException, IOException { try { File file = new File(Environment.getExternalStorageDirectory() + File.separator + “images” + File.separator + “newxml.xml”); DocumentBuilderFactory docFactory = DocumentBuilderFactory .newInstance(); DocumentBuilder docBuilder = docFactory.newDocumentBuilder(); Document doc = docBuilder.parse(file); // root elements // Document doc = docBuilder.newDocument(); // Element rootElement = doc.get // doc.appendChild(rootElement); Node node […]